前回は『AWS EC2編~EC2 Run Command Linuxで試してみる~』と題して、EC2 Run Command をLinuxで試してみました。
今回は『AWS ECS編~EC2 Container Registry を試してみる~』と題して、EC2 Container Registry を試してみたいと思います。
Amazon EC2 Container Registry (ECR)とは
Amazon EC2 Container Registry (ECR)は完全マネージドなDockerコンテナレジストリで、開発者はDockerコンテナイメージを保存し管理しデプロイすることが簡単にできます。
Amazon ECRはAmazon ECSとDocker CLIとも連携をしているため、 開発や本番でのワークフローをシンプルにできます。開発機からはDocker CLIを使ってAmazon ECRにコンテナイメージを簡単にpushでき、本番デプロイではAmazon ECSで直接pullできます。
今までは自身でプライベートDockerイメージレジストリを立てて管理する必要がありましたが、このサービスにより開発等に集中する事ができますね。
試してみる
1.ECR を作成する
今回はGetting Started を利用してECRを作成してみます。
ECSページからGetting Startedを起動してECRの項目にチェックを付けて進みます。
次にRepositoryの設定をしていきます。
これで作成は完了です。
Repositoryのコマンドチュートリアルが表示されます。
現状では未だイメージが無いのがわかります。
2.Repositoryに接続してみる
実際にRepositoryに接続してみます。
ECRのコマンドは最新のaws cliが必要の為、アップデートします。
1 |
# pip install --upgrade awscli |
コマンドチュートリアルを参考に以下を実施します。
1 2 |
# aws ecr get-login --region us-east-1 docker login -u AWS -p <文字列> -e none https://<発行されたURL>.dkr.ecr.us-east-1.amazonaws.com |
発行されたコマンドの結果で以下が表示されていれば成功です。
1 2 |
WARNING: login credentials saved in /root/.docker/config.json Login Succeeded |
3.イメージを登録してみる
実際にRepositoryにイメージを登録してみます。
今回はテストの為、簡単に出来るようにbusyboxのイメージを利用してpushしてみたいと思います。
busyboxのイメージをpullしてタグ付けします。
1 2 |
# docker pull busybox:latest # docker tag busybox:latest <発行されたURL>.dkr.ecr.us-east-1.amazonaws.com/test-repo:latest |
pushしてみます。
1 2 3 4 5 |
# docker push <発行されたURL>.dkr.ecr.us-east-1.amazonaws.com/test-repo:latest The push refers to a repository [<発行されたURL>.dkr.ecr.us-east-1.amazonaws.com/test-repo] (len: 1) ac6a7980c6c2: Pushed c00ef186408b: Pushed latest: digest: sha256:f68c31e407261ff952470c755adb014b75841e21efaadd69eaf65b696da9b80b size: 2737 |
コンソール上で確認してみます。
いかがでしたでしょうか?
次回は『AWS RDS編~Amazon RDS (MySQL)でlocal time zone を試してみる~』と題して、Amazon RDS (MySQL)でlocal time zone を試してみたいと思います。
お楽しみに!!!