From d17183a47e4016aa8e8b6e88aa066e6745f583c5 Mon Sep 17 00:00:00 2001 From: CREATIVE_tg1 Date: Wed, 15 Apr 2026 18:01:16 +0000 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20vaultwarden/README.backuper.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vaultwarden/README.backuper.md | 152 ++++++++++++++++++++------------- 1 file changed, 94 insertions(+), 58 deletions(-) diff --git a/vaultwarden/README.backuper.md b/vaultwarden/README.backuper.md index b22e87c..411ea03 100644 --- a/vaultwarden/README.backuper.md +++ b/vaultwarden/README.backuper.md @@ -1,72 +1,108 @@ # Vaultwarden Backuper -Автоматический скрипт для резервного копирования Vaultwarden, архивации данных и отправки бэкапа в Telegram. - -## Возможности - -- Запускает резервное копирование через `/vaultwarden backup` -- Архивирует каталог `/data` -- Отправляет архив** в Telegram через бота по ID пользователя -- Автоматически удаляет архив и старые файлы `/data/db_*` -- Проверяет зависимости (`curl`, `tar`, `date`) и при необходимости устанавливает их (поддерживаются все популярные дистрибутивы, если запущено от root) - -## Использование - -1. **Создайте Telegram-бота и получите токен** - Создайте бота через [@BotFather](https://t.me/BotFather), получите ваш `"token"`. - -2. **Узнайте свой user_id** - Получить свой user_id можно с помощью бота [@userinfobot](https://t.me/userinfobot) или аналогичного. - -3. **Запустите скрипт:** - -```sh -curl -fsSL https://gitea.creative-tg1.ru/CREATIVE_tg1/for-servers/raw/branch/main/vaultwarden/backuper.sh | sudo bash -s -- --token --user_id -``` - -**Пример:** -```sh -curl -fsSL https://gitea.creative-tg1.ru/CREATIVE_tg1/for-servers/raw/branch/main/vaultwarden/backuper.sh | sudo bash -s -- --token 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11 --user_id 987654321 -``` - -## Параметры - -- `--token` — токен Telegram-бота -- `--user_id` — ваш Telegram `user_id`, куда отправлять резервные копии - -## Требования - -- Скрипт должен запускаться с root-правами (или через `sudo`), чтобы при необходимости автоматически устанавливать зависимости. -- Требуются установленные бинарники: `curl`, `tar`, `date` -- Vaultwarden должен уметь выполнять резервное копирование командой `/vaultwarden backup` -- Каталог `/data` должен содержать резервируемую базу и быть доступен для архивации - -## Автоматическая установка утилит - -Скрипт самостоятельно определяет используемый пакетный менеджер (`apk`, `apt`, `dnf`, `yum`, `zypper`, `pacman`) и устанавливает недостающ��е утилиты, если запущен от root. - -## Важно - -- Для Docker-контейнеров рекомендуется включить необходимые утилиты (`curl`, `tar`, `date`) в образ при сборке. -- Скрипт удаляет архив бэкапа и файлы `/data/db_*` сразу после успешного завершения всех операций. +Удобный скрипт для создания резервной копии Vaultwarden, архивации данных и отправки бэкапа в Telegram. --- -## English (short) +## Возможности -**Vaultwarden automatic backup script with Telegram delivery.** -Run as root or with `sudo`: +- Запускает `/vaultwarden backup` +- Архивирует каталог `/data` +- Отправляет архив в Telegram пользователю по `user_id` +- Очищает временный архив и файлы `/data/db_*` +- Проверяет и при необходимости устанавливает зависимости (`curl`, `tar`, `date`) +- Поддержка установки зависимостей: автоматическая (в Docker режиме всегда, на обычной системе — если запущен с правами root) +- Гибкий режим запуска: обычная система (`host`) или контейнер (`docker`) -``` -curl -fsSL https://gitea.creative-tg1.ru/CREATIVE_tg1/for-servers/raw/branch/main/vaultwarden/backuper.sh | sudo bash -s -- --token --user_id +--- + +## Использование + +### Обычный сервер (host) + +- **Запуск с правами `root` (рекомендуется использовать `sudo`):** + +```sh +curl -fsSL https://gitea.creative-tg1.ru/CREATIVE_tg1/for-servers/raw/branch/main/vaultwarden/backuper.sh | sudo bash -s -- --token --user_id --mode host ``` -- Performs vaultwarden backup, archive and send to Telegram. -- Installs required utilities if needed (if root). -- Cleans up backup archive and `/data/db_*`. +**Параметр `--mode host` по умолчанию**, можно не указывать. + +--- + +### Docker-контейнер + +- **В Docker-контейнере (обычно уже root, `sudo` не нужен):** + +```sh +curl -fsSL https://gitea.creative-tg1.ru/CREATIVE_tg1/for-servers/raw/branch/main/vaultwarden/backuper.sh | bash -s -- --token --user_id --mode docker +``` + +--- + +## Параметры скрипта + +- `--token` — токен Telegram-бота (узнайте у [@BotFather](https://t.me/BotFather)) +- `--user_id` — ваш Telegram `user_id` (узнайте через [@userinfobot](https://t.me/userinfobot)) +- `--mode` — режим запуска: + - `host` — обычный сервер (с root или sudo), по умолчанию + - `docker` — контейнер Docker, чтобы гарантировать отсутствие вызова sudo и немедленную установку утилит + +--- + +## Требования + +- Vaultwarden должен поддерживать команду `/vaultwarden backup` +- Каталог `/data` должен содержать данные для архивации +- Необходимы утилиты: `curl`, `tar`, `date` — скрипт установит их автоматически, если возможно и нужные права есть + +### В случае Docker + +Рекомендуется при сборке container-образа явно включить зависимости, например, для Alpine: + +```dockerfile +RUN apk add --no-cache curl tar +``` + +Для Debian/Ubuntu: + +```dockerfile +RUN apt-get update && apt-get install -y curl tar +``` + +--- + +## Пример использования + +```sh +# 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:** + +```sh +# Host (with sudo) +curl -fsSL https://gitea.creative-tg1.ru/CREATIVE_tg1/for-servers/raw/branch/main/vaultwarden/backuper.sh | sudo bash -s -- --token --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 --user_id --mode docker +``` --- ## Лицензия -MIT (или укажите свою) +MIT \ No newline at end of file