こんにちは、ちゃりおです。
今回は、ECRにdockerイメージをpush/pullする際に便利なawsコマンドについてです。
aws ecrコマンド
コマンドの紹介です。
リポジトリの一覧表示(リポジトリ名のみ)
まずはリポジトリの一覧表示です。
$ aws ecr describe-repositories --query "repositories[].repositoryName"
[
"test-repo",
]
ECRへのログイン
ECRへのログインです。
AWSアカウントIDが必要なため、「aws sts get-caller-identity」でアカウントIDを取得しています。
$ AID=$(aws sts get-caller-identity --query Account --output text)
$ aws ecr get-login-password --region ap-northeast-1 | docker login --username AWS --password-stdin $AID.dkr.ecr.ap-northeast-1.amazonaws.com
イメージのpush
リポジトリの一覧表示でリポジトリ名を確認後、pushします。
$ REPO="リポジトリ名"
$ AID=$(aws sts get-caller-identity --query Account --output text)
$ docker tag $REPO:latest $AID.dkr.ecr.ap-northeast-1.amazonaws.com/$REPO:latest
$ docker push $AID.dkr.ecr.ap-northeast-1.amazonaws.com/$REPO:latest
イメージのpull
イメージタグをセットして、ECRからイメージをpullします。
$ REPO="リポジトリ名"
$ AID=$(aws sts get-caller-identity --query Account --output text)
$ aws ecr list-images --repository-name $REPO #イメージタグを確認
$ ITAG="イメージタグ"
$ docker pull $AID.dkr.ecr.ap-northeast-1.amazonaws.com/$REPO:$ITAG
まとめ
ECRのpush/pullについてでした。
アカウントIDを指定があるので、「aws sts get-caller-identity」を使うことが多かったです。
必要に応じて、エイリアスに登録しておこうと思います。
別アカウントから使用できるECRをCDKで書いてみたこんにちは、ちゃりおです。
AWSアカウントを分けているのですが、共通のDockerイメージを使いたいため
別アカウントで同じECRを...
CDKで複数コンテナのECSタスクを作成する際はDefaultコンテナの指定を忘れずやろうこんにちは、ちゃりおです。
ECSで複数コンテナを動かすタスク定義をCDKで書いていました。
しかし、想定したコンテナがALBのターゲ...
【書評】イラストで分かるDockerとKubernetesこんにちは、ちゃりおです。
今回は、コンテナ関連のおすすめ本について紹介します。
イラストでわかるDockerとKubernetes...