Docker for Mac で Amazon Linuxのコンテナイメージを動かす

はじめに

macbook air をクリーンインストールしたついでに、開発環境をイチから構築していました。
Docker の コンテナイメージ何にしようかと探していたら Amazon Linuxがコンテナ化されていたんですね。
(今更しりました…。)
ということで、折角知ったので macで Amazon Linuxのコンテナを動かしてみます。

前準備

docker for mac のインストール

$ brew cask install docker
$ docker -v

Docker version 17.03.1-ce, build c6d412e

aws cli の インストール と 設定

$ brew install awscli
$ aws --version

aws-cli/1.11.76 Python/2.7.10 Darwin/16.5.0 botocore/1.5.39
$ aws configure

AWS Access Key ID [None]: `IAMのアクセスキー`
AWS Secret Access Key [None]: `上記IAMのシークレットキー`
Default region name [None]: ap-northeast-1
Default output format [None]: json

ここから本番

AmazonLinuxコンテナが配布されているECRへのログインコマンドを取得します。

$ aws ecr get-login --region ap-northeast-1 --registry-ids 137112412989
docker login -u AWS -p 'パスワード' -e none https://137112412989.dkr.ecr.ap-northeast-1.amazonaws.com

上記のコマンドが表示されるので、コピペして実行します。

Flag --email has been deprecated, will be removed in 1.14.
Login Succeeded

ログイン成功したようなので、イメージの種類を aws ecr list-imagesで確認してみます。

$ aws ecr list-images --region ap-northeast-1 --registry-id 137112412989 --repository-name amazonlinux | grep 'imageTag'

"imageTag": "2016.09.0.20161028-with-sources",
"imageTag": "2016.09.1.20161221",
"imageTag": "with-sources",
"imageTag": "2016.09.0.20161118",
"imageTag": "2016.09-with-sources",
"imageTag": "latest-with-sources",
"imageTag": "latest",
"imageTag": "2016.09.1.20161221-with-sources",
"imageTag": "2016.09",
"imageTag": "2016.09.0.20161118-with-sources",
"imageTag": "2016.09.0.20161028"

ここでは もちろん latestをローカルにpull してみます。

$ docker pull 137112412989.dkr.ecr.ap-northeast-1.amazonaws.com/amazonlinux:latest
$ docker images

REPOSITORY                                                      TAG                 IMAGE ID            CREATED             SIZE
137112412989.dkr.ecr.ap-northeast-1.amazonaws.com/amazonlinux   latest              ff59a593059d        3 months ago        292 MB

試しに実行してみます。 docker run

$ docker run -it 137112412989.dkr.ecr.ap-northeast-1.amazonaws.com/amazonlinux:latest /bin/bash

bash-4.2# cat /etc/system-release
Amazon Linux AMI release 2016.09

おお。できてますね!
必要最低限のパッケージしか入っていないみたいなので、次回はこれを使って環境構築をしていきます。

image

classmethodさんの記事に cawsayが載っていたので、真似してみました。:-)

SEE ALSO