从 VPC 中使用 CodeArtifact - CodeArtifact

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

从 VPC 中使用 CodeArtifact

如果您无法或不想在 为 CodeArtifact 创建 VPC 端点。 中创建的 com.amazonaws.region.codeartifact.repositories VPC 端点上启用私有 DNS,则必须对存储库端点使用不同的配置才能从 VPC 使用 CodeArtifact。如果 com.amazonaws.region.codeartifact.repositories 端点未启用私有 DNS,请按照使用不带私有 DNS 的 codeartifact.repositories 端点中的说明配置 CodeArtifact。

使用不带私有 DNS 的 codeartifact.repositories 端点

如果您无法或不想在为 CodeArtifact 创建 VPC 端点。中创建的 com.amazonaws.region.codeartifact.repositories VPC 端点上启用私有 DNS,则必须按照以下说明,使用正确的 CodeArtifact URL 配置程序包管理器。

  1. 运行以下命令来查找用于覆盖主机名的 VPC 端点。

    $ aws ec2 describe-vpc-endpoints --filters Name=service-name,Values=com.amazonaws.region.codeartifact.repositories \ --query 'VpcEndpoints[*].DnsEntries[*].DnsName'

    输出如下所示。

    [ [ "vpce-0743fe535b883ffff-76ddffff.d.codeartifact.us-west-2.vpce.amazonaws.com" ] ]
  2. 更新 VPC 端点路径来包括程序包格式、CodeArtifact 域名和 CodeArtifact 存储库名称。请参阅以下示例。

    https://vpce-0743fe535b883ffff-76ddffff.d.codeartifact.us-west-2.vpce.amazonaws.com/format/d/domain_name-domain_owner/repo_name

    替换示例端点中的以下字段。

    • format:替换为有效的 CodeArtifact 程序包格式,例如 npmpypi

    • domain_name:替换为包含 CodeArtifact 存储库(用于托管您的程序包)的 CodeArtifact 域。

    • domain_owner:替换为 CodeArtifact 域所有者的 ID,例如 111122223333

    • repo_name:替换为托管程序包的 CodeArtifact 存储库。

    以下 URL 是一个示例 npm 存储库端点。

    https://vpce-0dc4daf7fca331ed6-et36qa1d.d.codeartifact.us-west-2.vpce.amazonaws.com/npm/d/domainName-111122223333/repoName
  3. 将您的程序包管理器配置为使用上一步中更新的 VPC 端点。您必须在不使用 CodeArtifact login 命令的情况下配置程序包管理器。有关每个程序包格式的配置说明,请参阅以下文档。