#1955: Установка обновлений Swarmica
Отредактирована: сегодняОбщая информация
Обновление системы может происходить по одному из трех сценариев:
- Автоматическое, можно пропустить промежуточные версии – такой сценарий возможен, когда нет изменений в файлах запуска (docker-compose.yml, .env и т.д.) и нет изменений схемы данных, которые удаляют какие-либо данные.
- Автоматическое, нельзя пропустить промежуточную версию - этот сценарий задействован, когда нет изменений в файлах запуска (docker-compose.yml, .env и т.д.), но есть изменения схемы данных, которые удаляют какие-либо данные. Промежуточное обновление необходимо для того, чтобы сохранить эти данные для дальнейшего использования. С точки зрения администратора системы, выполняющего обновление, никаких дополнительных действий делать не нужно, автоматика самостоятельно произведет все необходимые действия, но время обновления вырастет и будет производен дополнительный рестарт на промежуточной версии.
- Ручное - такой сценарий возможен, когда есть изменения в файлах запуска (docker-compose.yml, .env и т.д.) и требуется прочитать инструкцию по выполнению обновления и выполнить все указанные там действия.
Выполнение обновления
Обновление выполняется из каталога установки (/root/swarmica):
make upgrade-plan # показать план обновления, ничего не меняя
make upgrade # выполнить обновление
-
cd /root/swarmica -
make upgrade-planскачивает манифест обновлений и строит план до последнего релиза. Рекомендуется выполнять сначала эту команду, чтобы оценить длительность обновления и планируемое количество действий -
make upgradeскачивает манифест обновлений, строит план до последнего релиза и выполняет его по шагам.

Каждый шаг: проверки, скачивание образов, резервная копия БД, запись версий в .env, запуск контейнеров с ожиданием миграций, post_start. Всё, что может завершиться ошибкой, выполняется до изменения .env: при сбое на этом этапе ничего не меняется. Если шаг прервался после изменения .env, повторный make upgrade продолжит его с места остановки, а при сбое печатается точная инструкция по откату.
- Для шагов, требующих ручной подготовки, обновление останавливается и показывает ссылку на инструкцию. После подготовки и выполнения всех шагов из инструкции:
make upgrade ACK=vX.Y.Z. - Автоматическое обновление доступно только с релизной версии. Если в
.envуказаныmainилиdevel, укажите фактический релиз:make set-release VERSION=vX.Y.Z, затемmake pull up.
Версию можно узнать в интерфейсе системы в разделе Настройки, если у вас есть затруднения – обратитесь в поддержку Swarmica.
Системные требования
- Версия Swarmica не ниже v6.0.0 – до нее необходимо обновиться вручную согласно инструкциям промежуточных версий
- Для обновления требуются Docker Compose не ниже 2.24.6, GNU make 4.x, jq 1.6 и новее, curl и flock.
Переход на автообновление
-
Скачайте последнюю версию архива установщика на сервер со Swarmica:
wget https://support.swarmica.com/attachments/installer/installer.tar.gz -
Распакуйте архив:
tar -xvzf installer.tar.gz -
Перейдите в каталог:
cd installer-main -
Скопируйте Makefile в каталог, где установлена Swarmica:
cp templates/Makefile /root/swarmica/ -
Проверьте, что у вас есть переменная
SW_RELEASE_VERSIONв/root/swarmica/.env, и если ее нет - добавьте с указанием той версии, которая установлена на сервере (можно посмотреть в разделе Настройки)