14.4. イメージタグへのリファラーの割り当て
次の手順では、oras
CLI を使用して、OCI ディストリビューション仕様 1.1 でサポートされているさまざまなスキーマを使用して、イメージタグにリファラーを割り当てる方法を示します。これは、コンテナーイメージへのリファラーなど、追加のメタデータを割り当ておよび管理するのに役立ちます。
前提条件
-
oras
CLI をダウンロードした。詳細は、Installation を参照してください。 - OCI メディアアーティファクトにアクセスできる。
手順
次のコマンドを入力して、OCI メディアアーティファクトにタグを付けます。
podman tag <myartifact_image> <quay-server.example.com>/<organization_name>/<repository>/<image_name>:<tag>
$ podman tag <myartifact_image> <quay-server.example.com>/<organization_name>/<repository>/<image_name>:<tag>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow アーティファクトを Red Hat Quay レジストリーにプッシュします。以下に例を示します。
podman push <myartifact_image> <quay-server.example.com>/<organization_name>/<repository>/<image_name>:<tag>
$ podman push <myartifact_image> <quay-server.example.com>/<organization_name>/<repository>/<image_name>:<tag>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oras
で OCI 1.1 リファラーのAPI
スキーマを使用してマニフェストを割り当てるには、次のコマンドを入力します。oras attach --artifact-type <MIME_type> --distribution-spec v1.1-referrers-api <myartifact_image> \ <quay-server.example.com>/<organization_name>/<repository>/<image_name>:<tag> \ <example_file>.txt
$ oras attach --artifact-type <MIME_type> --distribution-spec v1.1-referrers-api <myartifact_image> \ <quay-server.example.com>/<organization_name>/<repository>/<image_name>:<tag> \ <example_file>.txt
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OCI 1.1 リファラーの
tag
スキーマを使用してマニフェストを割り当てるには、次のコマンドを入力します。oras attach --artifact-type <MIME_type> --distribution-spec v1.1-referrers-tag \ <myartifact_image> <quay-server.example.com>/<organization_name>/<repository>/<image_name>:<tag> \ <example_file>.txt
$ oras attach --artifact-type <MIME_type> --distribution-spec v1.1-referrers-tag \ <myartifact_image> <quay-server.example.com>/<organization_name>/<repository>/<image_name>:<tag> \ <example_file>.txt
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow tag
スキーマを使用してアーティファクトのリファラーを検出するには、次のコマンドを入力します。oras discover --insecure --distribution-spec v1.1-referrers-tag \ <quay-server.example.com>/<organization_name>/<repository>/<image_name>:<tag>
$ oras discover --insecure --distribution-spec v1.1-referrers-tag \ <quay-server.example.com>/<organization_name>/<repository>/<image_name>:<tag>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
quay.io/testorg3/myartifact-image@sha256:db440c57edfad40c682f9186ab1c1075707ce7a6fdda24a89cb8c10eaad424da └── doc/example └── sha256:2d4b54201c8b134711ab051389f5ba24c75c2e6b0f0ff157fce8ffdfe104f383
quay.io/testorg3/myartifact-image@sha256:db440c57edfad40c682f9186ab1c1075707ce7a6fdda24a89cb8c10eaad424da └── doc/example └── sha256:2d4b54201c8b134711ab051389f5ba24c75c2e6b0f0ff157fce8ffdfe104f383
Copy to Clipboard Copied! Toggle word wrap Toggle overflow API
スキーマを使用してアーティファクトのリファラーを検出するには、次のコマンドを入力します。oras discover --distribution-spec v1.1-referrers-api \ <quay-server.example.com>/<organization_name>/<repository>/<image_name>:<tag>
$ oras discover --distribution-spec v1.1-referrers-api \ <quay-server.example.com>/<organization_name>/<repository>/<image_name>:<tag>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション:
/v2/<organization_name>/<repository_name>/referrers/<sha256_digest>
エンドポイントを使用してリファラーを検出することもできます。これを機能させるには、v2 API トークンを生成し、config.yaml
ファイルでFEATURE_REFERRERS_API: true
を設定する必要があります。config.yaml
ファイルを更新して、FEATURE_REFERRERS_API
フィールドを含めます。以下に例を示します。# ... FEATURE_REFERRERS_API: true # ...
# ... FEATURE_REFERRERS_API: true # ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力し、認証情報を Base64 でエンコードします。
echo -n '<username>:<password>' | base64
$ echo -n '<username>:<password>' | base64
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
abcdeWFkbWluOjE5ODlraWROZXQxIQ==
abcdeWFkbWluOjE5ODlraWROZXQxIQ==
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、base64 でエンコードされたトークンを使用し、URL エンドポイントを Red Hat Quay サーバーに変更します。
curl --location '<quay-server.example.com>/v2/auth?service=<quay-server.example.com>&scope=repository:quay/listocireferrs:pull,push' --header 'Authorization: Basic <base64_username:password_encode_token>' -k | jq
$ curl --location '<quay-server.example.com>/v2/auth?service=<quay-server.example.com>&scope=repository:quay/listocireferrs:pull,push' --header 'Authorization: Basic <base64_username:password_encode_token>' -k | jq
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
{ "token": "<example_token_output>..." }
{ "token": "<example_token_output>..." }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
リポジトリー配下のマニフェストの OCI リファラーをリスト表示するには、v2 API トークンを使用して次のコマンドを入力します。
GET https://<quay-server.example.com>/v2/<organization_name>/<repository_name>/referrers/sha256:0de63ba2d98ab328218a1b6373def69ec0d0e7535866f50589111285f2bf3fb8
$ GET https://<quay-server.example.com>/v2/<organization_name>/<repository_name>/referrers/sha256:0de63ba2d98ab328218a1b6373def69ec0d0e7535866f50589111285f2bf3fb8 --header 'Authorization: Bearer <v2_bearer_token> -k | jq
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow