Обновление компонентов, установленных на одном сервере

  • В случае, если установлена версия 3.0 совместно с версией 2.29, необходимо перед обновлением до 2.29.1 остановить версию 3.0 командой ./run.sh --stop
  • Перед обновлением платформа обязательно должна быть запущена, так как происходит бэкап БД сервисов mongodb и viqube.
  • Если предполагается обновление платформы, используя Yandex Container Registry, то копирование файлов дистрибутива не требуется.
  • Перед обновлением важно убедиться, что у пользователя, из-под которого будет происходить обновление, есть все права на выполнение команды docker или производить обновление из-под суперпользователя. Подробнее здесь Общая часть обновления.
  • Перед обновлением до версии 2.29 или 2.29.1 необходимо выключить внешнюю авторизацию (OpenID Connect и Kerberos) и включить внутреннюю, так как в процессе обновления будет необходимо ввести логин и пароль администратора.

Обновление через Yandex Container Registry


  1. Залогиниться в Yandex Container Registry. См. Общая часть обновления.
  2. Установить образ обновления.

    Обновление на версию 2.29
    docker pull cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.29
    Обновление на версию 2.29.1
    docker pull cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/update:2.29.1
  3. Создать новую папку и перейти в неё. Скрипты запуска появятся в ней.
  4. Запустить обновление.

    Обновление на версию 2.29
    docker 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
    Обновление на версию 2.29.1
    docker 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.1 -l hub \
        --from <2.28|2.29> | tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt

    В --from необходимо указать версию, с которой происходит обновление.

  5. В полях "Enter Admin login" и "Enter Admin password" ввести логин и пароль пользователя с ролью "Администратор" в платформе
  6. a) При обновлении с версии 2.28 запуск платформы выполнять не нужно, он произойдет автоматически в процессе обновления.
    b) При обновлении с версии 2.29 необходимо выполнить запуск платформы через скрипт run.sh с правами суперпользователя. Подробнее Запуск платформы

Обновление через образы


  1. Скопировать дистрибутив платформы на сервер, сохраняя структуру вложенных элементов.

  2. На сервере перейти в скопированную папку с дистрибутивом.
  3. Сделать исполняемыми скрипты load_images.sh, load_from_release_dockerhub.sh, run.sh, выполнив команду:

    sudo chmod +x *.sh
  4. Загрузить образ обновления в память.

    docker load < images/update.tar.gz
  5. Перейти в папку с дистрибутивами и запустить обновление, скрипты запуска появятся в текущей директории.

    Обновление на версию 2.29
    docker 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
    Обновление на версию 2.29.1
    docker 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.1 -l local \
        --from <2.28|2.29> | tee update-log-$(date +%Y-%m-%d-%H-%M-%z).txt

    В --from необходимо указать версию, с которой происходит обновление.

  6. В полях "Enter Admin login" и "Enter Admin password" ввести логин и пароль пользователя с ролью "Администратор" в платформе
  7. a) При обновлении с версии 2.28 запуск платформы выполнять не нужно, он произойдет автоматически в процессе обновления.
    b) При обновлении с версии 2.29 необходимо выполнить запуск платформы через скрипт run.sh с правами суперпользователя. Подробнее Запуск платформы