Перейти к основному контенту

Переустановка Docker-контейнера

Большинство приложений и услуг основанных на Docker-стандарте постоянно развиваются, появляются новые доступные версии. В связи с этим, вам может потребоваться обновить версию вашего шаблона. Под обновлением версии шаблона подразумевается его переустановка, при этом:

  • данные, хранящиеся в томах контейнера, сохраняются и в последствии будут доступны в отдельных tar.gz архивах , которые во время обновления версии шаблона автоматически передаются в переустановленный контейнер;

  • все ранее указанные пользовательские конфигурации (такие как: конфигурация запуска, соединения, переменные и т.д) не будут затронуты;

  • при работе с несколькими шаблонами (т.е. при горизонтальном масштабировании) обновление может быть выполнено косвенно, и не вызовет простоев при применении функции Последовательного развертывания (принцип работы данной функции будет рассмотрен далее).

Обновление версии контейнера может быть выполнено непосредственно через графический интерфейс панели управления Jelastic, или удаленно, с помощью клиента Jelastic CLI.

Переустановка Docker-контейнера в панели управления

Переустановка контейнера в панели управления является наиболее удобным способом обновления версии шаблона:

  1. 1.

    выполнить переустановку контейнера в панели управления можно двумя способами:

    • вы можете кликнуть на кнопку Переустановка контейнеров рядом с необходимым узлом (или напротив соответствующего уровня окружения для обновления всех контейнеров сразу):

    Переустановка контейнеров

    • или вы можете выбрать меню Изменить топологию окружения для требуемого окружения, затем нажать на значок карандаша Сменить версию:

    Изменить топологию окружения Сменить версию

  2. 2.

    в результате появится окно Переустановка контейнера, где нужно выбрать необходимую версию для выбранного контейнера:

    Выбрать версию

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

    Последовательное развертывание

    При включении данной опции контейнеры будут переустановлены по очереди, что обеспечит доступность сервиса во время данной операции. В противном случае все контейнеры будут обновлены одновременно, что вызовет временный простой. После завершения всех конфигураций нажмите Переустановить;

  3. 3.

    после завершения обновления вы увидите соответствующее всплывающее сообщение в правом верхнем углу панели:

    Завершение обновления

    При нажатии на кнопку Показать логи появится вкладка журнала переустановки, который содержит ID узла обновленного контейнера, название: версию контейнера и длительность процесса переустановки:

    Показать логи

  1. 4.

    текущую версию контейнера вы можете увидеть в панели управления, в колонке Дистрибутив:

    Дистрибутив

Готово, вы переустановили Docker в панели управления.

Переустановка Docker-контейнера с помощью CLI клиента

Другим возможным способ обновить версию Docker-шаблона является использование Jelastic CLI клиента, который обеспечивает возможность выполнения всех требуемых операций удаленно.

  1. 1.

    для поиска доступных версий шаблона выполните следующую команду:

    ~/jelastic/environment/control/getdockertags --image {template_name} [--userName {login}] [--password {password}]

    где, {template_name} — имя требуемого шаблона;
    {login} и {password} — необязательные параметры, требуются в случае использования пользовательского репозитория.

    Имя шаблона

  1. 2.

    теперь, когда вы знаете перечень доступных версий, вы можете выбрать нужную вам версию и инициировать обновление контейнера, выполнив следующую команду:

    ~/jelastic/environment/control/redeploycontainerbyid --domain {env_domain} --nodeId {node_id} --tag {tag}

    • где {env_domain} — доменное имя соответствующего окружения;
    • {node_id} — идентификатор контейнера, который будет переустановлен;
    • {tag} — версия шаблона.

    Вы можете узнать данный ID, выполнив следующую команду:

    ~/jelastic/environment/control/getenvinfo --domain {env_domain}

    Подождите пару минут, чтобы увидеть отчёт с информацией о версии шаблона и длительности операции:

    Отчет об операции

    Также как и через панель управления, вы можете переустановить все контейнеры в пределах одного окружения одновременно с помощью команды:

    ~/jelastic/environment/control/redeploycontainersbygroup --domain {env_domain} --nodeGroup {group_id} --tag {tag}

    где {group_id} — представляет собой идентификатор группы узлов, который вы можете увидеть таким же образом как и идентификатор {node_id}, с помощью команды, приведенной выше. Кроме того, вы можете включить данную опцию обновления путем добавления параметра [--sequential true] к выполняемой команде.

    Таким образом, вы получаете мощный инструмент для управления версиями Docker-шаблонов. При необходимости вы можете переключаться между версиями без каких-либо ручных настроек и передачи данных.

Готово, вы переустановили Docker-контейнер с помощью CLI-клиента.

Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 0 из 0