注釈: GitHub Container Registry は現在パブリックベータであり、変更されることがあります。 During the beta, storage and bandwidth are free. To use GitHub Container Registry, you must enable the feature for your account. For more information, see "Enabling improved container support."
GitHub Container Registry について
With the container registry you can:
- Store container images within your organization and user account, rather than a repository.
- Set fine-grained permissions and visibility independent of repository permissions and visibility.
- Access public container images anonymously.
パッケージの使用についてのコンテキストを共有するには、GitHub でコンテナイメージをリポジトリにリンクできます。 詳しい情報については、「リポジトリをコンテナイメージに接続する」を参照してください。
GitHub Container Registry has different hosting locations, permission, and visibility than other package registries.
パッケージレジストリ | GitHub Container Registry | |
---|---|---|
ホスト場所 | 1 つのリポジトリに複数のパッケージをホストできます。 | 1 つの Organization またはユーザアカウントに複数のコンテナをホストできます。 |
権限 | You can publish packages in a public repository (public packages) to share with all of GitHub, or in a private repository (private packages) to share with collaborators or an organization. パッケージはリポジトリの権限を継承するので、GitHubのロールとTeamを使い、各パッケージをインストールしたり公開したりできる人を制限できます。 リポジトリの読み取り権限を持っている人は、パッケージを依存関係としてプロジェクトにインストールでき、書き込み権限を持っている人は新しいパッケージのバージョンを公開できます。 | コンテナイメージごとに、他のユーザが持つアクセスレベルを選択できます。 コンテナイメージへのアクセス権限は、Organization およびリポジトリの権限とは別になります。 |
可視性 | You can publish packages in a public repository (public packages) to share with all of GitHub, or in a private repository (private packages) to share with collaborators or an organization. | それぞれのコンテナイメージに可視性を設定できます。 プライベートコンテナイメージは、Organization 内でアクセス権を付与されたユーザおよび Team のみに表示されます。 パブリックコンテナは誰でも表示できます。 |
For more information, see "About scopes and permissions for GitHub Container Registry."
サポートされているフォーマット
The container registry currently supports the following container image formats:
GitHub Container Registry は、コンテナを ghcr.io/OWNER/IMAGE-NAME
にホストします。
パッケージクライアント | 言語 | パッケージフォーマット | 説明 |
---|---|---|---|
docker | なし | Dockerfile | Nodeのパッケージマネージャー |
Manifest Lists/Image Indexes
GitHub Container Registry also supports Docker Manifest List/OCI Image Index formats which are defined in the Docker V2, Schema 2 and OCI image specifications.
コンテナイメージの可視性とアクセス権限
コンテナイメージへのアクセス権限がある場合、コンテナイメージをプライべートまたはパブリックに設定できます。 パブリックイメージは匿名でアクセスでき、認証や CLI 経由でサインインすることなくプルできます。
あなたが管理者であれば、Organization レベルおよびリポジトリレベルに設定した権限とは別に、コンテナイメージに対してアクセス権限を付与することもできます。
ユーザアカウントが所有し公開しているコンテナイメージには、任意のユーザにアクセスロールを付与できます。 Organization が所有し公開しているコンテナイメージには、Organization 内の任意の Team にアクセスロールを付与できます。
権限ロール | アクセス権の内容 |
---|---|
Read | パッケージをダウンロードできます。 メタデータの読み取りができます。 |
Write | このパッケージをアップロードおよびダウンロードできます。 パッケージのメタデータの読み取りおよび書き込みができます。 |
Admin | このパッケージのアップロード、ダウンロード、削除、管理ができます。 パッケージのメタデータの読み取りおよび書き込みができます。 パッケージに権限を付与できます。 |
詳しい情報については、「コンテナイメージにアクセス制御と可視性を設定する」を参照してください。
トークンについて
パッケージをインストールあるいは公開するには、適切なスコープを持つトークンを使い、ユーザアカウントがそのリポジトリに対する適切な権限を持っていなければなりません。
スコープ | 説明 |
---|---|
read:packages | GitHub Container Registryからのコンテナイメージのダウンロードとインストール |
write:packages | GitHub Container Registryへのコンテナイメージのアップロードと公開 |
delete:packages | GitHub Container Registryからの特定バージョンのプライベートまたはパブリックコンテナイメージの削除。 詳細は「コンテナイメージを削除する」を参照してください。 |
To learn about available scopes and permissions for container images, see "Configuring access control and visibility for container images."
詳しい情報については、「個人アクセストークンを作成する」と「利用可能なスコープ」を参照してください。
GitHub Container Registryの支払いについて
During the GitHub Container Registry beta, both the new container registry and existing GitHub Packages Docker registry will be free. For more information about the GitHub Packages Docker registry, see "Configuring Docker for use with GitHub Packages."
After the beta, the same billing and storage rates that other GitHub Packages registries use will apply to the container registry. For more information, see "About billing for GitHub Packages."
サポートへの連絡
GitHub Container Registry に関するフィードバックや機能のリクエストがある場合は、フィードバックフォームでご連絡ください。
連絡フォームを使い、GitHub Container RegistryについてGitHub Supportに連絡してください。
- ドキュメンテーションに反する何らかの体験をした時.
- 漠然とした、あるいは不明確なエラーを体験した時.
- GDPR 違反、API キー、個人を識別できる情報といったセンシティブなデータを含むパッケージを公開した時。