下载文件

本页面介绍了如何从 Artifact Registry 下载各个文件 标准代码库和远程代码库。 代码库可以是任何工件格式

如果您想将文件导入本地环境,但不想使用特定于格式的工具,下载文件会很有用。请注意,您必须 在下载文件前向 Artifact Registry 进行身份验证。

可下载的文件

您可以下载代码库中的任何单个数据或元数据文件。 例如,Maven 制品库会将 Java 软件包存储为制品。任何文件 (如 jar 文件和 pom.xml 文件)中, 可供下载。

对于在下载操作中严重依赖于客户端工具的工件(例如 Docker 映像),不建议使用此功能。

准备工作

所需的角色

如需获取下载存储在代码库中的文件所需的权限, 请让管理员授予您 代码库的 Artifact Registry Reader (roles/artifactregistry.reader) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

您也可以通过自定义角色或其他预定义角色来获取所需的权限。

列出文件

您可以列出代码库中的文件,以查看可供下载的文件。

控制台

  1. 打开 Google Cloud 控制台中的制品库页面。

    打开“代码库”页面

  2. 在代码库列表中,选择相应代码库。

  3. 点击相应软件包的名称。

  4. 如需查看所有软件包版本的可下载文件,请点击 Files(文件) 标签页。

  5. 如需查看特定软件包版本的可下载文件,请点击相应版本名称,然后点击文件标签页。

gcloud

对于以下所有命令,您都可以通过向命令添加 --limit 标志来设置要返回的文件数量上限。

如需在配置默认值时列出默认项目、代码库和位置中的所有文件,请运行以下命令:

gcloud artifacts files list

如需列出指定项目、代码库和位置中的文件,请运行以下命令:

gcloud artifacts files list \
    --project=PROJECT \
    --repository=REPOSITORY \
    --location=LOCATION

如需列出特定软件包所有版本的文件,请执行以下操作:

gcloud artifacts files list \
    --project=PROJECT \
    --repository=REPOSITORY \
    --location=LOCATION \
    --package=PACKAGE

如需列出特定软件包版本的文件,请运行以下命令:

gcloud artifacts files list \
    --project=PROJECT \
    --repository=REPOSITORY \
    --location=LOCATION \
    --package=PACKAGE \
    --version=VERSION

替换以下值:

  • LOCATION:代码库的单区域或多区域位置
  • PROJECT:您的 Google Cloud 项目 ID。 如果您的项目 ID 包含英文冒号 (`:`),请参阅网域级项目
  • REPOSITORY:映像所在代码库的名称 。
  • PACKAGE:软件包的名称。
  • VERSION:软件包的版本。

对于 Docker 代码库,您可以列出特定容器映像标记的文件 方法是在命令中添加 --tag 标志。

如需了解详情,请参阅 gcloud artifacts files list

下载文件

如需从代码库中下载各个文件,请运行以下命令:

gcloud

在使用下面的命令数据之前,请先进行以下替换:

  • PROJECT:您的 Google Cloud 项目 ID。 如果您的项目 ID 包含英文冒号 (:),请参阅网域级项目
  • LOCATION:区域级或多区域级 代码库的位置
  • REPOSITORY:代码库的名称 工件的存储位置
  • DESTINATION:本地文件系统中目标文件夹的路径。目标文件夹必须已存在,或者 则会失败。
  • FILE:完整文件名。您可以通过运行 gcloud artifacts files list 命令并复制 FILE 的值来找到此值。

执行以下命令:

Linux、macOS 或 Cloud Shell

gcloud artifacts files download \
    --project=PROJECT \
    --location=LOCATION \
    --repository=REPOSITORY \
    --destination=DESTINATION \
    FILE

Windows (PowerShell)

gcloud artifacts files download `
    --project=PROJECT `
    --location=LOCATION `
    --repository=REPOSITORY `
    --destination=DESTINATION `
    FILE

Windows (cmd.exe)

gcloud artifacts files download ^
    --project=PROJECT ^
    --location=LOCATION ^
    --repository=REPOSITORY ^
    --destination=DESTINATION ^
    FILE
您应该会立即看到下载开始。

API

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT:您的 Google Cloud 项目 ID。 如果您的项目 ID 包含英文冒号 (:),请参阅网域级项目
  • LOCATION:区域级或多区域级 代码库的位置
  • REPOSITORY:代码库的名称 工件的存储位置
  • DESTINATION:指向 本地文件系统中的目标文件夹。目标文件夹必须已存在,否则命令将失败。
  • FILE:网址编码的文件名。您可以 您可以通过运行 gcloud artifacts files list 命令并复制 FILE 的值来查找此值。它必须是 转换为此命令的网址编码格式,例如 path/to/file.jar 需要以 path%2Fto%2Ffile.jar 形式输入。

HTTP 方法和网址:

GET https://artifactregistry.googleapis.com/download/v1/projects/PROJECT/locations/LOCATION/repositories/REPOSITORY/files/FILE:download?alt=media

如需发送您的请求,请展开以下选项之一:

您应该会看到系统立即开始下载。

后续步骤