ECS автоматическое развертывание с ECR - PullRequest
0 голосов
/ 28 ноября 2018

Я использую GitHub, Jenkins, AWS ECR, AWS ECS.

Я хочу развернуть автоматически, когда GitHub имеет новый коммит.Когда GitHub, получивший новый коммит, GitHub отправил webhook Дженкинсу, Дженкинс строит образы и отправляет их в ECR с тегом 'latest'.

Интересно, как я могу заставить задачу ECS перезапустить службу и автоматически повторно развертывать изображения, когда ECRизображение изменилось?

1 Ответ

0 голосов
/ 28 ноября 2018

Не используйте latest в этой настройке.Пусть Дженкинс выберет тег для изображения (возможно, на основе идентификатора коммита контроля источника, имени тега контроля источника или метки времени).Дайте ему возможность обновлять задачи ECS, а затем (после того, как сборка произойдет и пройдет соответствующее тестирование перед запуском) попросите Дженкинса изменить тег изображения в задаче на тот, который он только что построил.ECS увидит, что образ изменился, извлечет новый образ и запустит контейнеры соответствующим образом.

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

...