新しい springboot+docker(マイクロサービス) ベースのプロジェクトをセットアップしようとしています。デプロイは aws を対象としています。すべてのサービスには、Dockerfile が関連付けられています。デプロイに amazon コンテナー サービスを使用することを考えていますが、私が見る限り、docker ハブからイメージをプルするだけです。ECS が docker-hub からプルするのではなく、docker ファイルからイメージをビルドしてから、それらのコンテナーのデプロイを引き継ぐことを望んでいません。それは可能ですか? はいの場合、どのように。
2 に答える
これは、 Amazon EC2 Container Service (ECS)だけではまだ不可能です。ECS はプライベート レジストリをサポートしていますが (ブログの紹介記事も参照してください)、まだイメージ ビルド サービスを提供していません (いつものように、AWS は追加する予定です)。このような重要な追加機能については、たとえば機能リクエスト: ECS コンテナー ドリーム サービスを参照してください)。
ただし、 AWS Elastic Beanstalkの単一コンテナ Docker 構成の初期サポートに組み込まれているため、すでに実現できます。
Docker は を使用し
Dockerfile
て、ソース バンドルを含む Docker イメージを作成します。[...] Dockerfile は、 Elastic Beanstalk 環境内の各 Amazon EC2 インスタンスでカスタマイズされた Docker イメージを構築するために Elastic Beanstalk が使用する命令を含むプレーン テキスト ファイルです。リポジトリでホストされている既存のイメージがまだない場合は、Dockerfile を作成します。[鉱山を強調]
皮肉なことに、Elastic Beanstalk はECS に基づくマルチコンテナ Docker 環境を追加しましたが、この非常に望まれるより用途の広い Docker 展開オプションは、イメージを順番に構築する機能を提供しません。
を使用したデプロイ中のカスタム イメージの構築
Dockerfile
は、Elastic Beanstalk のマルチコンテナ Docker プラットフォームではサポートされていません。Elastic Beanstalk 環境を作成する前に、イメージをビルドしてオンライン リポジトリにデプロイします。[鉱山を強調]
上記のように、AWS のよく知られている俊敏性 (たとえば、最新の ECS 更新を参照) により、それほど遠くない将来にこれが ECS に追加されることを期待していますが、通常はロードマップの詳細にコミットしていないため、これを待つ必要がある時間を見積もるのは難しいです。