1
1

AWS Elastic Container Registry 概要から詳細まで

Last updated at Posted at 2024-08-31

はじめに

イメージを作成してコンテナとして起動するというユースケースは頻繁に行われるものです。その際のレジストリとしてECRを使用すると思いますが簡単にまとめてみました。意外と知られていない機能もあると思うのでお時間があるときにチェックしてみてはいかがでしょうか。

ECRとは

  • コンテナイメージレジストリのマネージドサービス

  • Docker CLIコマンドを利用することが可能

  • コンテナイメージ/アーティファクトはS3に保存

  • サポートされる形式

    • Dockerイメージ(v1,v2)
    • Open Container Initiative (OCI)イメージ
    • OCI互換 artifacts
  • 機能

    • レジストリ
      • AWSアカウントごとに用意される
      • イメージを保存するためのリポジトリを複数作成可能
      • Dockerクライアントを認証して利用
    • リポジトリ
      • Dockerイメージ、OCIイメージ、OCIC互換アーティファクトを保存
    • リポジトリポリシー
      • リポジトリとリポジトリ内のイメージへのアクセス権を制御
    • 認証トークン
      • IAM認証情報を利用して、レジストリに対して認証をする
  • アクセスタイプ

    • プライベートレジストリ
      • 利用するにはIAMベースの認証が必須
    • パブリックレジストリ
      • ECR Public
      • 認証なしでもイメージのpullが可能
      • 公開されているイメージを検索可能
  • ECR Docker Credential Helper

    • Docker Deamon向けのcredential helper
    • Dockerクライアントからより簡単にECRを利用することが可能
    • プライベートレジストリ/パブリックレジストリ共に利用可能

Replication (※Private Only.)

  • コンテナイメージを別リージョン・別AWSアカウントにレプリケーションすることが可能
  • イメージをpushした際に自動でレプリケーションされる
  • 脆弱性の検出結果はレプリケーションされない

Pull Through Cache(※ Private Only.)

  • パブリックレジストリのイメージをECR Privateでキャッシュ
  • リモートレジストリと自動同期
  • アップストリームのパブリックレジストリとしてECR PublicとQuay.ioをサポート

Repository creation template

透過的なリポジトリ作成が行われた際の初期設定値を リポジトリ作成テンプレート 機能によってコントロール(自動でセットアップ)できるようになりました。

image.png

Scanning(※ Private Only.)

ECRにpushされたコンテナイメージの脆弱性の検出をする

(1)Basic scanning

  • 検出対象 : OSパッケージ
  • スキャン実行 : on push / マニュアル実行
  • 追加料金なしで利用可能

※update

(2)Enhanced scanning

  • 検出対象 : OSパッケージ、プログラミングライブラリ
  • スキャン実行 : on push / 継続的
  • Amazon Inspectorとの統合

image.png

ECR Public Gallery

  • ECR public で公開されているコンテナイメージを検索
  • Docker公式イメージも利用可能
  • App Runnerサービスを直接起動することも可能

参考文献

かなりニッチなECR情報。興味がある方はぜひ

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1