Обновления

Как ваш сервер Freedom Messenger получает обновления с исправлениями безопасности и новыми функциями.

Автоматические обновления (рекомендуется)

Самый простой способ получать обновления — позволить нам отправлять их на ваш сервер автоматически:

  1. Вы предоставляете нам SSH-доступ к серверу (ключ deploy)
  2. Мы добавляем IP-адрес вашего сервера в наш CI/CD-пайплайн
  3. При выходе новой версии она автоматически разворачивается на вашем сервере
  4. Процесс: остановка сервиса → бэкап БД → замена бинарного файла → копирование файлов приложений → запуск сервиса
Для клиентов управляемого хостинга автоматические обновления уже включены — вам ничего не нужно делать.

Настройка автоматических обновлений

Чтобы включить автоматические обновления на самостоятельном сервере:

  1. Мы предоставим вам публичный SSH-ключ
  2. Добавьте его в /home/deploy/.ssh/authorized_keys на вашем сервере
  3. Сообщите нам IP-адрес сервера
  4. Мы добавим его в пайплайн — обновления будут приходить автоматически

Пользователь deploy имеет ограниченный sudo — может только запускать и останавливать сервисы Freedom Messenger, ничего больше.

Ручные обновления

Если вы предпочитаете обновлять вручную (например, не хотите давать SSH-доступ):

  1. Мы предоставим вам новый бинарный файл
  2. Создайте бэкап базы данных: freedom-mess backup
  3. Остановите сервис: sudo systemctl stop freedom-mess
  4. Замените бинарный файл в /usr/local/bin/freedom-mess
  5. Запустите сервис: sudo systemctl start freedom-mess
  6. Миграции базы данных выполняются автоматически при старте

Клиенты с единоразовой покупкой

Если вы приобрели единоразовую лицензию, вы получили версию, актуальную на момент покупки. Обновления не включены. Для получения будущих обновлений:

  • Подпишитесь на план обновлений (от $5/мес) — мы настроим SSH-доступ и будем отправлять обновления автоматически

Что происходит при обновлении

  • Бэкап базы данных создаётся перед заменой бинарного файла
  • Старый бинарный файл сохраняется как .bak для отката
  • Новые файлы приложений (APK, десктопные установщики) копируются в data/apps/
  • Миграции БД выполняются автоматически при старте новой версии

Откат

# Восстановить старый бинарный файл
sudo cp /usr/local/bin/freedom-mess.bak /usr/local/bin/freedom-mess

# Восстановить бэкап БД (если нужно)
cp /opt/freedom-mess/data/freedom-mess-pre-update.db /opt/freedom-mess/data/freedom-mess.db

# Перезапуск
sudo systemctl restart freedom-mess

Лучшие практики

  • Всегда делайте бэкап перед ручным обновлением
  • Следите за логами: journalctl -u freedom-mess -f
  • Автоматические обновления предпочтительнее — бэкап включён автоматически