本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将 Helm 图表推送到 Amazon ECR 私有存储库
您可以将 Open Container Initiative(OCI)构件推送到 Amazon ECR 存储库。要查看此功能的示例,请使用以下步骤将 Helm 图表推送到 Amazon ECR。
有关在 Amazon EKS 中使用 Amazon ECR 托管的 Helm 图表的信息,请参阅在 Amazon EKS 集群中安装 Helm 图表。
将 Helm Chart 推送到 Amazon ECR 存储库
-
安装最新版本的 Helm 客户端。这些步骤是使用 Helm 版本
3.8.2
编写的。有关更多信息,请参阅安装 Helm。 -
请按照以下步骤创建测试 Helm Chart。有关更多信息,请参阅 Helm 文档 - 入门
。 -
创建名为
helm-test-chart
的 Helm Chart 并清除templates
目录的内容。helm create
helm-test-chart
rm -rf ./helm-test-chart
/templates/* -
在
templates
文件夹中创建 ConfigMap。cd
helm-test-chart
/templates cat <<EOF > configmap.yaml apiVersion: v1 kind: ConfigMap metadata: name:helm-test-chart
-configmap data: myvalue: "Hello World" EOF
-
-
打包图表。输出将包含您在推送 Helm Chart 时使用的打包图表的文件名。
cd ../.. helm package
helm-test-chart
输出
Successfully packaged chart and saved it to: /Users/
username
/helm-test-chart
-0.1.0.tgz -
创建存储库以存储 Helm Chart。存储库的名称应与步骤 2 中创建 Helm Chart 时使用的名称匹配。有关更多信息,请参阅 创建 Amazon ECR 私有存储库以存储映像。
aws ecr create-repository \ --repository-name
helm-test-chart
\ --regionus-west-2
-
对要向其推送 Helm Chart 的 Amazon ECR 注册表验证 Docker 客户端的身份。必须针对每个注册表获得授权令牌,令牌有效期为 12 小时。有关更多信息,请参阅 Amazon ECR 中的私有注册表身份验证。
aws ecr get-login-password \ --region
us-west-2
| helm registry login \ --username AWS \ --password-stdinaws_account_id
.dkr.ecr.cn-north-1
.amazonaws.com.cn -
使用 helm push 命令推送 Helm Chart。输出应包括 Amazon ECR 存储库 URI 和 SHA 摘要。
helm push
helm-test-chart-0.1.0.tgz
oci://
/aws_account_id
.dkr.ecr.cn-north-1
.amazonaws.com.cn -
描述您的 Helm Chart。
aws ecr describe-images \ --repository-name
helm-test-chart
\ --regionus-west-2
在输出中,验证
artifactMediaType
参数指示正确的构件类型。{ "imageDetails": [ { "registryId": "
aws_account_id
", "repositoryName": "helm-test-chart", "imageDigest": "sha256:dd8aebdda7df991a0ffe0b3d6c0cf315fd582cd26f9755a347a52adEXAMPLE", "imageTags": [ "0.1.0" ], "imageSizeInBytes": 1620, "imagePushedAt": "2021-09-23T11:39:30-05:00", "imageManifestMediaType": "application/vnd.oci.image.manifest.v1+json", "artifactMediaType": "application/vnd.cncf.helm.config.v1+json" } ] } -
(可选)有关其他步骤,请安装 Helm configmap 并开始使用 Amazon EKS。有关更多信息,请参阅 在 Amazon EKS 集群中安装 Helm 图表。