AWSにコンテナ化されたアプリケーションを展開する:ステップバイステップガイド
![How to Deploy Containerized Apps on AWS Using ECR and Docker](https://img.php.cn/upload/article/000/000/000/173907421216694.jpg)
このチュートリアルでは、Amazon Web Services(AWS)が提供するスケーラブルで堅牢なプラットフォームにコンテナ化されたアプリケーションを展開し、Amazon Elastic Container Service(ECS)、Elastic Container Registry(ECR)、およびDockerを活用しています。
ステップ1:AWSの存在感を確立します
始める前に、アクティブなAWSアカウントを持っていることを確認してください。 そうでない場合は、AWS Webサイトに移動して作成し、必要な個人、請求、支払いの詳細を提供します。
ステップ2:Docker Image Repository(ECR)
のセットアップ
docker画像を保存するには、ECRリポジトリが必要です。
AWS管理コンソールにアクセスします。
Amazon ECRコンソールを開きます
「リポジトリ」を選択します
- 「リポジトリの作成」を選択します
リポジトリに名前を割り当て、「リポジトリの作成」をクリックします。
-
- ステップ3:Docker画像をECRにアップロードします
-
次に、Docker画像を新しく作成したECRリポジトリに押します:-
ローカルマシンにAWSコマンドラインインターフェイス(CLI)をインストールします。
AWS管理コンソール内で、「ユーザー」に移動して新しいユーザーを作成し、ECRリポジトリに画像をプッシュするために必要なアクセス許可を付与します。
端末を開き、次のコマンドを実行します
これにより、Dockerログインコマンドが生成されます。 このコマンドを実行して、dockerクライアントをECRレジストリで認証します。
docker画像にECRリポジトリURIをタグ付けします
:- を使用して画像を展開します
-
- ステップ4:ECSタスクを定義します
aws configure
aws ecr get-login --no-include-email --region $(aws configure get region) # For Linux/macOS
ログイン後にコピー
ログイン後にコピー
コンテナをAWSに展開するには、ECSタスクの定義を作成します。
Amazon ECSコンソールにアクセスします。
ナビゲーションペインから「タスク定義」を選択してください
- 「新しいタスク定義の作成」を選択します。
- 「EC2起動タイプ」を選択します
タスクの定義に名前を付けて、DockerイメージURIを指定します。
ポートマッピングを構成(必要に応じて)。
docker push <your_ecr_uri>:<your_image_tag>
ログイン後にコピー
「作成」をクリックします
ステップ5:ECSクラスターの作成
ECSクラスターは、タスクの実行のためにAmazon EC2インスタンスを論理的にグループ化します:-
- Amazon ECSコンソールを開きます
ナビゲーションペインの「クラスター」に移動します
- 「Create Cluster」を選択します
クラスターに名前を付けて、VPCとサブネットを選択します。
-
「作成」をクリックします
-
- ステップ6:コンテナインスタンスの起動
-
コンテナインスタンスを実行するには、適切なIAM許可を使用してAmazon EC2インスタンスを起動します。
- Amazon EC2コンソールで、「Instancesの起動」を選択します
docker互換のAmazonマシンイメージ(AMI)を選択します
- ECSクラスターと同じVPCとサブネット内のインスタンスを起動します。
インスタンスのIAMプロファイルに必要なIAMの役割を割り当てます。
経由でインスタンスに接続します
次のコマンドを使用して、インスタンスをECSクラスターに統合します。
-
ステップ7:コンテナの展開
最後に、コンテナを実行するサービスを作成します:
aws configure
aws ecr get-login --no-include-email --region $(aws configure get region) # For Linux/macOS
ログイン後にコピー
ログイン後にコピー
Amazon ECSコンソールを開きます
作成したクラスターを選択します。
ナビゲーションペインから「サービス」を選択します。
「create」を選択します。-
サービス名を提供します。-
タスク定義を指定します
- 目的の数のタスクを設定します。
- サービスの起動タイプを選択します
「サービスの作成」をクリックします
-
コンテナ化されたアプリケーションは、ECSを使用してAWSに展開されます! 一般的なAWS統合を備えた事前に構成されたセットアップについては、AWSボイラープレートを探索してください。
-
よくある質問-
-
- ECRセキュリティ:
IAMを使用したECRアクセスを確保し、安静時および輸送中にデータを暗号化し、TLS 1.2以上を使用し、構成を定期的に監査します。
コンテナのパフォーマンス監視:、プロメテウス、グラファナ、またはAWSの組み込み監視サービスなどのツールを使用します。
以上がECRとDockerを使用してAWSにコンテナ化されたアプリを展開する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。