Перейти к содержимому
GitHubПоддержать

Бэкапы и восстановление

mikan backup

Архив mikan-ГГГГММДД-ЧЧММСС.tar.gz появится в /opt/mikan/backups. В нём .env, compose.yaml, согласованный снимок базы, сертификаты панели, данные ноды и настройки адаптеров оплаты. Внутри все секреты сервера, поэтому папка доступна только root.

Перед опасными операциями mikan сам делает бэкапы и хранит несколько последних:

Когда Сколько хранится
перед обновлением 5
перед переходом на PostgreSQL 3
перед восстановлением 3

Ваши архивы mikan-* никогда не удаляются автоматически.

mikan restore /opt/mikan/backups/mikan-20261001-031500.tar.gz

Перед восстановлением программа проверяет архив, останавливает контейнеры и сохраняет снимок текущего состояния. Если шаг не удался, всё возвращается как было. Свои пароль базы, образ и версия сервера сохраняются, поэтому бэкап можно перенести на свежеустановленный сервер. Бэкап панели не встанет на ноду, и наоборот.

  • -y не задаёт вопросов.
  • --no-db-snapshot не снимает копию текущей базы перед заменой: для PostgreSQL, которая сломана настолько, что её не выгрузить. Если восстановление не удастся, текущие данные пропадут.

Архив только с базой (как бэкап из Telegram) восстанавливает только базу, а настройки, сертификаты и адаптеры остаются как есть. Старые бэкапы SQLite восстанавливаются и на панели с PostgreSQL. Восстановление заменяет базу целиком.

Telegram → Инфраструктура → Бэкапы в Telegram: каждый день в выбранный час (по UTC) панель присылает в чат администратора зашифрованный бэкап базы. Нужно подключить чат администратора, см. Уведомления.

  • Пароль шифрования: от 20 символов, кнопка «Сгенерировать». Потерянный пароль не восстановить.
  • «Отправить сейчас» присылает бэкап сразу.
  • В бэкапе только база: пользователи, тарифы, настройки, токен бота. .env, сертификатов и ключей нод в нём нет, для них держите бэкапы на сервере.
  • Файл не больше 50 МБ, это лимит ботов Telegram.

Восстановить на сервере (нужна утилита age):

age -d -o mikan.tar.gz mikan-….tar.gz.age
mikan restore mikan.tar.gz