Перед обновлением платформа обязательно должна быть запущена, так как происходит бэкап БД сервиса mongodb.
Если предполагается обновление платформы, используя Yandex Container Registry, то копирование файлов дистрибутива не требуется.
Проверка прав docker
Перед обновлением важно убедиться, что у пользователя, из-под которого будет происходить обновление, есть все права на выполнение команды docker или производить обновление из-под суперпользователя. Подробнее здесь Общая часть обновления.
Обновление через Yandex Container Registry
- Залогиниться в Yandex Container Registry. См. Общая часть обновления.
Установить образ обновления.
Обновление на версию 2.29docker pull cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.29
- Создать новую папку и перейти в неё. Скрипты запуска появятся в ней.
Запустить обновление.
Обновление на версию 2.29docker run -it \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /docker-volume:/docker-volume \ -v $(pwd):/mnt/volume \ -v $HOME/.docker:/root/.docker \ cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.29 -l hub | tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
Сделать исполняемым скрипт run.sh, выполнив команду:
sudo chmod +x *.sh
Запуск платформы выполнять не нужно, он произойдет автоматически в процессе обновления.
Обновление через образы
Скопировать дистрибутив платформы на сервер, сохраняя структуру вложенных элементов.
- На сервере перейти в скопированную папку с дистрибутивом.
Сделать исполняемыми скрипты load_images.sh, load_from_release_dockerhub.sh, run.sh, выполнив команду:
sudo chmod +x *.sh
Загрузить образ обновления в память.
docker load < images/update.tar.gz
Перейти в папку с дистрибутивами и запустить обновление, скрипты запуска появятся в текущей директории.
Обновление на версию 2.29docker run -it \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /docker-volume:/docker-volume \ -v $(pwd):/mnt/volume \ -v $HOME/.docker:/root/.docker \ cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.29 -l local | tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt
Сделать исполняемым скрипт run.sh, выполнив команду:
sudo chmod +x *.sh
Запуск платформы выполнять не нужно, он произойдет автоматически в процессе обновления.