Kubernetes for Macから ECRのイメージを取得する方法
Kubernetes for Mac (正確にはDocker for Mac上で動いているKubernetes) でテストするときには、ローカルでDockerイメージ作ってそれを使用することが多いのですが、 ローカルのkubeから直接ECRに登録されている Private Dockerイメージを読みたいことがあったので調べました。 ググったらすぐ出てくる方法なんですが、一応メモっておきます。
手順
前提として、 awscliやcredentialの設定はできてるとします。
ログインできるかの確認
$ $(aws ecr get-login --region ${AWS_REGION} --no-include-email)
まずはdocker loginが動くか確かめます。
AWS_REGISONは適宜指定します。東京の場合は ap-northeast-1
ですね。
次に docker-registryのsecretを作成します。
$ ecr_login="$(aws ecr get-login --no-include-email --region $AWS_REGION)" $ kubectl create secret docker-registry ecr \ --docker-username=`echo $ecr_login | awk '{print $4}'` \ --docker-password=`echo $ecr_login | awk '{print $6}'` \ --docker-server=`echo $ecr_login | awk '{print $7}'`
次にPrivate Registryのイメージを読み込むyamlに、以下のように imagePullSecrets
を指定してやります。
あとはこのyamlファイルを applyすればOKです.
参考
- 作者:山田 明憲
- 発売日: 2018/08/25
- メディア: Kindle版