TL;DR
- 今年のre:Invent で発表されたECR の機能
- Docker Hub のオフィシャルイメージをECR 経由でPull できるようになる
- Cloud Build のIP 制限が回避できる
About
ECR からDocker Hub のイメージをpull できるようになりました。
Docker Official Images now available on Amazon Elastic Container Registry Public | Containers
このDocker Hub イメージはAWS 内からのpull (Cloud Build でのpull やECS/EKS のサイドカーなど)は無制限で使用できます。
AWS の外部からの場合は500GB までpull が可能です。また、AWS の認証を行った場合は5TB まで$0.09/GB でpull が可能です。
Usage
以下のURL からイメージを探すことが可能です。
https://gallery.ecr.aws/docker
node のイメージを試す
例えばnode のオフィシャルイメージであれば以下のURL で閲覧することができます。
ECR Public Gallery - Docker/library/node
タグを見てみるとDocker Hub と遜色ない(すべて揃ってそう?)ようにみえます。
x86 のイメージだけではなくARM のイメージがあるのも嬉しいですね。
試しにDocker Hub とECR からpull したイメージを比較してみます
$ docker pull public.ecr.aws/docker/library/node:latest $ docker pull node:latest $ diff <(docker history public.ecr.aws/docker/library/node:latest) <(docker history node:latest) $ $ diff <(docker inspect public.ecr.aws/docker/library/node:latest) <(docker inspect node:latest) $
単純に比較しただけだと同じものを使っているようですね。
所感
Code Build で安易にbuild できるようになったのは良いですね。
嬉しいアップデートで、積極的に使っていきたい機能です。