如需允许 Conda CLI 访问 Artifact Registry 制品库,您必须在向 Artifact Registry 发出的请求中提供身份验证令牌。本页面介绍了如何配置 Artifact Registry Conda Package Repository 的身份验证。
准备工作
- 如果您还没有 Conda 制品库,请创建 Conda 软件包制品库。
- 验证是否已安装 Conda。如果未安装 Conda,请运行并安装 Miniforge。
- 验证您使用的用户账号或服务账号是否具有访问代码库所需的权限。
-
安装 Google Cloud CLI。 安装完成后,运行以下命令来初始化 Google Cloud CLI:
gcloud init如果您使用的是外部身份提供方 (IdP),则必须先使用联合身份登录 gcloud CLI。
- (可选)为 gcloud CLI 命令配置默认值。
使用 oauth 令牌对渠道进行身份验证
Conda 渠道是指存储了一个或多个 Conda 软件包的位置的地址。您必须先将相应软件包的渠道添加到 Conda 配置文件中,然后才能在 Conda 环境中安装软件包。
如需允许 Conda CLI 直接调用 Artifact Registry,您必须在 Google Cloud 中对 Conda 渠道进行身份验证,方法如下:
在 gcloud CLI 中,运行以下命令,将
oauth令牌的身份存储在 TOKEN 变量中:export TOKEN="oauth2accesstoken:$(gcloud auth print-access-token)"将您的 Conda 代码库添加为 Conda 配置文件中的渠道:
Conda
conda config --add channels \ https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORYMiniforge
conda config --add channels \ https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORYMamba
mamba config --add channels \ https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORYMicromamba
micromamba config --add channels \ https://$TOKEN@LOCATION-conda.pkg.dev/PROJECT/REPOSITORY其中:
- TOKEN 存储通过运行
oauth2accesstoken:$(gcloud auth print-access-token)生成的oauth令牌的值。 - LOCATION 是代码库的单区域或多区域位置。
- PROJECT 是包含相应仓库的项目的 ID。
- REPOSITORY 是代码库的 ID。
- TOKEN 存储通过运行
刷新过期的 oauth 令牌
oauth 令牌会在 1 小时后过期。如需使用新令牌重新验证频道,请执行以下操作:
从配置文件中移除您的频道:
Conda
conda config --remove channels CHANNEL_NAMEMiniforge
conda config --remove channels CHANNEL_NAMEMamba
mamba config --remove channels CHANNEL_NAMEMicromamba
micromamba config --remove channels CHANNEL_NAME按照上一步中的说明创建新的
oauth令牌。使用新令牌值将您的 Conda 代码库重新添加到 Conda 配置文件中。