GitHub、Jenkins、AWS ECR、AWS ECS を使用しています。
GitHub に新しいコミットがあるときに自動的にデプロイしたい。GitHub が新しいコミットを行うと、GitHub は Webhook を Jenkins に送信し、Jenkins はイメージをビルドし、「latest」タグを付けて ECR にプッシュします。
ECR イメージが変更されたときに、ECS サービスの再起動タスクを作成し、イメージを自動的に再デプロイするにはどうすればよいでしょうか?
GitHub、Jenkins、AWS ECR、AWS ECS を使用しています。
GitHub に新しいコミットがあるときに自動的にデプロイしたい。GitHub が新しいコミットを行うと、GitHub は Webhook を Jenkins に送信し、Jenkins はイメージをビルドし、「latest」タグを付けて ECR にプッシュします。
ECR イメージが変更されたときに、ECS サービスの再起動タスクを作成し、イメージを自動的に再デプロイするにはどうすればよいでしょうか?
latest
このセットアップでは使用しないでください。Jenkins にイメージのタグを選択させます (おそらく、ソース管理コミット ID、ソース管理タグ名、またはタイムスタンプに基づいて)。ECS タスクを更新できるようにし、(ビルドが行われ、適切な起動前テストが完了したら) Jenkins にタスクのイメージ タグをビルドしたばかりのものに変更させます。ECS は、イメージが変更されたことを確認し、新しいイメージをプルして、それに応じてコンテナーを起動します。
この方法を実行する他の 2 つの正当な理由: 明示的なバージョンがある場合、運用前のクラスターを用意し、そこに物を展開し、テストを実行してから、同じバージョンを運用環境に展開できます。デプロイがうまくいかない場合は、タグを手動で昨日のビルドに戻すことで、簡単にロールバックできます。これは、バージョンがlatest
.