第4章 イメージの名前付け規則

4.1. Red Hat の名前付けポリシー

Red Hat は、ユーザーの予測性を高めるために、一般にリリースされた Docker イメージについての一貫性のある名前付けポリシーを提供しています。

プロトコル/レジストリー形式の V1 バージョンの Docker URL は GitHub リポジトリー名と同様に機能します。以下のような構造になります。

REGISTRY[:PORT]/USER/REPO[:TAG]

暗示的なデフォルトレジストリーは docker.io です。これは、"redhat/rhel" などの相対 URL が docker.io/redhat/rhel に解決されることを意味します。

特殊名の "library/*" は、直接の接頭辞のないイメージにマップされます。例: "docker.io/rhel".

4.2. 要求のリダイレクト

Red Hat コンテンツの要求は docker.io から registry.access.redhat.com にリダイレクトされています。以下のマッピングはこのリダイレクトについて説明しています。

  • docker.io/rhel → registry.access.redhat.com/rhel (alias for rhel7)
  • docker.io/rhel7 → registry.access.redhat.com/rhel7
  • docker.io/rhel6 → registry.access.redhat.com/rhel6
  • docker.io/redhat/* → registry.access.redhat.com/redhat/*

Red Hat のコミュニティーのコンテンツには、以下の場所にある Docker Hub でアクセスできます。

  • docker.io/fedora
  • docker.io/centos
  • docker.io/jboss/*

Red Hat Enterprise RHEL 7.2 に同梱される Docker のバージョンは、デフォルトで内部の Red Hat レジストリーと通信します。これにより、Red Hat は名前空間をレジストリーでセグメント化できます。

レジストリーコンテンツはタグ付けされた名前のマッピングであり、コンテンツのコピー操作を伴うものではありません。このマッピングは複数のシンボリックリンクを使って行われます。Red Hat はこれらのリンクを常に最新の状態に保つことでデータの整合性を確保します。

「REPO」は、多数の明示的にタグ付けされたイメージと多数の表示されない層が含まれるリポジトリーです。「IMAGE」はリポジトリー内の特定の層が設定されたブランチです。「イメージ」と「リポジトリー」という用語は同意語として使用されることが多くありますが、両者は同じものを指す訳ではありません。たとえば、複数の異なるイメージは単一リポジトリーにタグ付けすることができます。