Files
for-servers/vaultwarden/README.backuper.md

4.0 KiB
Raw Permalink Blame History

Vaultwarden Backuper

Удобный скрипт для создания резервной копии Vaultwarden, архивации данных и отправки бэкапа в Telegram.


Возможности

  • Запускает /vaultwarden backup
  • Архивирует каталог /data
  • Отправляет архив в Telegram пользователю по user_id
  • Очищает временный архив и файлы /data/db_*
  • Проверяет и при необходимости устанавливает зависимости (curl, tar, date)
  • Поддержка установки зависимостей: автоматическая (в Docker режиме всегда, на обычной системе — если запущен с правами root)
  • Гибкий режим запуска: обычная система (host) или контейнер (docker)

Использование

Обычный сервер (host)

  • Запуск с правами root (рекомендуется использовать sudo):
curl -fsSL https://gitea.creative-tg1.ru/CREATIVE_tg1/for-servers/raw/branch/main/vaultwarden/backuper.sh | sudo bash -s -- --token <TOKEN> --user_id <USER_ID> --mode host

Параметр --mode host по умолчанию, можно не указывать.


Docker-контейнер

  • В Docker-контейнере (обычно уже root, sudo не нужен):
curl -fsSL https://gitea.creative-tg1.ru/CREATIVE_tg1/for-servers/raw/branch/main/vaultwarden/backuper.sh | bash -s -- --token <TOKEN> --user_id <USER_ID> --mode docker

Параметры скрипта

  • --token — токен Telegram-бота (узнайте у @BotFather)
  • --user_id — ваш Telegram user_id (узнайте через @userinfobot)
  • --mode — режим запуска:
    • host — обычный сервер (с root или sudo), по умолчанию
    • docker — контейнер Docker, чтобы гарантировать отсутствие вызова sudo и немедленную установку утилит

Требования

  • Vaultwarden должен поддерживать команду /vaultwarden backup
  • Каталог /data должен содержать данные для архивации
  • Необходимы утилиты: curl, tar, date — скрипт установит их автоматически, если возможно и нужные права есть

В случае Docker

Рекомендуется при сборке container-образа явно включить зависимости, например, для Alpine:

RUN apk add --no-cache curl tar

Для Debian/Ubuntu:

RUN apt-get update && apt-get install -y curl tar

Пример использования

# Host (server)
curl -fsSL https://gitea.creative-tg1.ru/CREATIVE_tg1/for-servers/raw/branch/main/vaultwarden/backuper.sh | sudo bash -s -- --token 123:ABC --user_id 987 --mode host

# Docker
curl -fsSL https://gitea.creative-tg1.ru/CREATIVE_tg1/for-servers/raw/branch/main/vaultwarden/backuper.sh | bash -s -- --token 123:ABC --user_id 987 --mode docker

English

Vaultwarden backup script with archive and Telegram delivery.

  • Launch on server as root/sudo (--mode host) or inside Docker as root (--mode docker)
  • Installs dependencies automatically if needed

Usage:

# Host (with sudo)
curl -fsSL https://gitea.creative-tg1.ru/CREATIVE_tg1/for-servers/raw/branch/main/vaultwarden/backuper.sh | sudo bash -s -- --token <TOKEN> --user_id <USER_ID> --mode host

# Docker (no sudo)
curl -fsSL https://gitea.creative-tg1.ru/CREATIVE_tg1/for-servers/raw/branch/main/vaultwarden/backuper.sh | bash -s -- --token <TOKEN> --user_id <USER_ID> --mode docker

Лицензия

MIT