ステップ 3: アプリケーションイメージを作成し、Docker ファイルを Amazon ECR リポジトリにアップロードする - Amazon Keyspaces (Apache Cassandra 向け)

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ステップ 3: アプリケーションイメージを作成し、Docker ファイルを Amazon ECR リポジトリにアップロードする

このステップでは、サンプルアプリケーションをコンパイルし、Docker イメージを構築し、そのイメージを Amazon ECR リポジトリにプッシュします。

アプリケーションの構築、Docker イメージの構築、Amazon Elastic Container Registry への送信
  1. を定義するビルドの環境変数を設定します AWS リージョン。例のリージョンを独自のリージョンに置き換えます。

    export CASSANDRA_HOST=cassandra.aws-region.amazonaws.com:9142 export CASSANDRA_DC=aws-region
  2. 次のコマンドを使用して、アプリケーションを Apache Maven バージョン 3.6.3 以降でコンパイルします。

    mvn clean install

    これにより、targetディレクトリに含まれるすべての依存関係を持つJARファイルが作成されます。

  3. 次のコマンドを使用して、次のステップに必要な ECR リポジトリ URI を取得します。リージョンは、使用しているリージョンに必ず更新してください。

    aws ecr describe-repositories --region aws-region

    出力は次の例のようになります。

    "repositories": [ { "repositoryArn": "arn:aws:ecr:aws-region:111122223333:repository/my-ecr-repository", "registryId": "111122223333", "repositoryName": "my-ecr-repository", "repositoryUri": "111122223333.dkr.ecr.aws-region.amazonaws.com/my-ecr-repository", "createdAt": "2023-11-02T03:46:34+00:00", "imageTagMutability": "MUTABLE", "imageScanningConfiguration": { "scanOnPush": false }, "encryptionConfiguration": { "encryptionType": "AES256" } },
  4. アプリケーションのルートディレクトリから、最後のステップのリポジトリ URI を使用して Docker イメージを構築します。必要に応じて Docker ファイルを変更します。ビルドコマンドで、アカウント ID を置き換え、 AWS リージョン を Amazon ECR リポジトリがあるリージョンに設定しますmy-ecr-repository

    docker build -t 111122223333.dkr.ecr.aws-region.amazonaws.com/my-ecr-repository:latest .
  5. 認証トークンを取得して、Docker イメージを Amazon ECR にプッシュします。これを行うには、次のコマンドを使用します。

    aws ecr get-login-password --region aws-region | docker login --username AWS --password-stdin 111122223333.dkr.ecr.aws-region.amazonaws.com
  6. まず、Amazon ECR リポジトリ内の既存のイメージを確認します。以下のコマンドを使用できます。

    aws ecr describe-images --repository-name my-ecr-repository --region aws-region

    次に、Docker イメージをリポジトリにプッシュします。以下のコマンドを使用できます。

    docker push 111122223333.dkr.ecr.aws-region.amazonaws.com/my-ecr-repository:latest