管理構件中繼資料

本頁說明如何管理儲存在 Artifact Registry 中的構件中繼資料,並以附件形式提供。

附件是儲存中繼資料的檔案,這些中繼資料與儲存在 Artifact Registry 中的相關構件有關。如要瞭解如何建立附件,請參閱在附件中儲存構件中繼資料

事前準備

選用:設定 Google Cloud CLI 指令的預設值

必要的角色

如要取得管理附件所需的權限,請要求管理員在存放區中授予下列 IAM 角色:

如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

您或許還可透過自訂角色或其他預先定義的角色取得必要權限。

清單附件

Artifact Registry 中的構件可有任意數量的參照附件。您可以使用 Trusted Cloud 控制台、gcloud CLI,或僅適用於 Docker 格式容器映像檔的 Oras,列出附件。

主控台 (僅限 Docker)

  1. 在 Trusted Cloud 控制台中,開啟「Repositories」(存放區) 頁面。

    開啟「存放區」頁面

  2. 按一下存放區名稱,即可查看存放區中的映像檔。

  3. 如要查看映像檔版本,請按一下映像檔名稱。

  4. 按一下適當的圖片版本。

  5. 如要查看該版本的附件,請按一下「附件」分頁標籤。

gcloud

使用下方的任何指令資料之前,請先替換以下項目:

  • TARGET:完整版本名稱。 如果是 Docker 映像檔,您也可以使用附件參照的構件 Artifact Registry URI。在 URI 中,您可以使用摘要,或 Docker 映像檔的標記,例如 u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:tag1

執行下列指令:

Linux、macOS 或 Cloud Shell

gcloud artifacts attachments list \
    --target=TARGET

Windows (PowerShell)

gcloud artifacts attachments list `
    --target=TARGET

Windows (cmd.exe)

gcloud artifacts attachments list ^
    --target=TARGET
詳情請參閱 gcloud artifacts attachments list 指令。

Oras (僅限 Docker)

執行指令前,請進行下列替換:

  • IMAGE_URI:任何列出的附件所參照的目標圖片 URI。
oras discover --distribution-spec v1.1-referrers-api IMAGE_URI

以下範例列出容器映像檔 (my-image) 的附件,並以 URI 和標記識別:

oras discover --distribution-spec v1.1-referrers-api \
u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:tag1

其中:

  • v1.1-referrers-api 使用的是 Referrer API。詳情請參閱發布規格

  • u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:tag1 是 URI,包括要列出附件的容器映像檔版本標記。

如需完整指南和更多範例,請參閱 oras discover 說明文件

描述附件

使用下方的任何指令資料之前,請先替換以下項目:

  • ATTACHMENT:附件的完整名稱,例如 projects/my-project/locations/u-france-east1/repositories/my-repo/attachments/my-attachment。或者,您也可以只提供附件 ID,並使用 --location--repository 標記。

執行下列指令:

Linux、macOS 或 Cloud Shell

gcloud artifacts attachments describe ATTACHMENT

Windows (PowerShell)

gcloud artifacts attachments describe ATTACHMENT

Windows (cmd.exe)

gcloud artifacts attachments describe ATTACHMENT
詳情請參閱 gcloud artifacts attachments describe 指令。

下載附件

您可以使用 gcloud CLI 下載附件,也可以使用 Oras (僅適用於 Docker 格式的容器映像檔)。

gcloud

使用下方的任何指令資料之前,請先替換以下項目:

  • ATTACHMENT:附件的完整名稱,例如 projects/my-project/locations/u-france-east1/repositories/my-repo/attachments/my-attachment。或者,您也可以只提供附件 ID,並使用 --location--repository 標記。
  • DESTINATION:本機檔案系統中要下載附件的路徑。

執行下列指令:

Linux、macOS 或 Cloud Shell

gcloud artifacts attachments download ATTACHMENT \
    --destination=DESTINATION

Windows (PowerShell)

gcloud artifacts attachments download ATTACHMENT `
    --destination=DESTINATION

Windows (cmd.exe)

gcloud artifacts attachments download ATTACHMENT ^
    --destination=DESTINATION
如要為 Docker 格式的存放區提供附件,除了 ATTACHMENT 之外,您也可以提供 --oci-version-name 旗標,後面接著附件的完整版本名稱或 Artifact Registry URI。您可以使用摘要或標記,例如 projects/my-project/locations/u-france-east1/repositories/my-repo/packages/my-package/versions/sha256:abc123

詳情請參閱 gcloud artifacts attachments download 指令。

Oras (僅限 Docker)

執行指令前,請進行下列替換:

  • DESTINATION:附件的目的地目錄。

  • ATTACHMENT_URI:要下載的附件 URI。這是附件參照的圖片容器 URI,後面接著附件的專屬 SHA。

oras pull -o DESTINATION ATTACHMENT_URI

以下範例會下載以 URI 和摘要識別的附件:

oras pull -o . u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image@sha256:xxxx

其中:

  • -o . 會將目前的目錄命名為下載目的地。

  • u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image@sha256:xxxx 是圖片 URI,包括要下載的附件摘要。

如需完整指南和更多範例,請參閱 oras pull 說明文件

刪除附件

您可以使用 Trusted Cloud 控制台或 gcloud CLI 直接刪除附件。如要間接刪除附件,請刪除附件參照的構件。

直接刪除附件

您可以直接使用下列任一選項刪除附件:

主控台 (僅限 Docker)

  1. 在 Trusted Cloud 控制台中,開啟「Repositories」(存放區) 頁面。

    開啟「存放區」頁面

  2. 按一下存放區名稱,即可查看存放區中的映像檔。

  3. 按一下映像檔名稱,即可查看該映像檔的版本。

  4. 按一下要查看附件的圖片版本。

  5. 按一下「附件」分頁標籤,即可查看該版本的附件。

  6. 按一下要刪除的附件摘要。

  7. 按一下 [刪除]

  8. 在確認對話方塊中,按一下「刪除」

gcloud

使用下方的任何指令資料之前,請先替換以下項目:

  • ATTACHMENT:附件的完整名稱,例如 projects/my-project/locations/u-france-east1/repositories/my-repo/attachments/my-attachment。或者,您也可以只提供附件 ID,並使用 --location--repository 標記。

執行下列指令:

Linux、macOS 或 Cloud Shell

gcloud artifacts attachments delete ATTACHMENT

Windows (PowerShell)

gcloud artifacts attachments delete ATTACHMENT

Windows (cmd.exe)

gcloud artifacts attachments delete ATTACHMENT
詳情請參閱 gcloud artifacts attachments delete 指令。

間接刪除附件

如果刪除構件,系統也會一併刪除所有以該構件版本名稱做為 target 的附件。這項限制適用於手動刪除構件,以及因資源清理政策而刪除構件的情況。

後續步驟