4

Я управляю кучей сервисов, которые работают на разных машинах. Я играл с этими службами, работающими внутри контейнеров, и все работает отлично. Затем мне было интересно, могу ли я иметь такую настройку:

короткий срок:

  1. Имейте контейнеры, которые будут автоматически собраны из репозитория git. Поэтому, если бы я хотел изменить / обновить контейнер, я мог бы просто обновить его в git, и контейнер будет обновляться автоматически. Насколько я понимаю, я мог бы настроить систему непрерывной интеграции для мониторинга git, а затем обновить докерскую систему через какую-то ловушку. Это то, что люди обычно делают?

  2. В случае сбоя машины попросите систему управления контейнером запустить контейнер на другом компьютере. Я взглянул на рой, и кажется, что у них пока нет этой функции: https://github.com/docker/swarm/issues/1488 Итак, еще раз, что люди в настоящее время делают по этому сценарию?

  3. Если все пойдет по плану (с перемещением контейнеров), то, наверное, мне понадобится какое-то разрешение DNS, чтобы соединения могли быть перенаправлены в нужный контейнер. Как люди это делают? Есть ли система управления контейнером, которая позаботится об этом?

долгосрочный:

  1. Собирайте статистику о контейнерах и перемещайтесь по машинам, чтобы все хорошо упаковывать. Похоже, что Swarm решает проблему с упаковкой бина, но я должен сказать, сколько ресурсов требуется конкретному контейнеру: https://docs.docker.com/swarm/scheduler/strategy/ Есть ли способ заставить это быть автоматическим со временем?

1 ответ1

0

для 1, да, это вполне нормально в моем опыте. мы используем Дженкинс для непрерывной интеграции. у этого есть плагин для создания образов докера. Maven также имеет плагин для создания образов докера. Я уверен, что должны быть другие инструменты CI, которые обеспечивают интеграцию с докером, а также интегрируются с остальной частью вашей среды.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .