將頭盔圖推送到 Amazon ECR 私有存儲庫 - Amazon ECR

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

將頭盔圖推送到 Amazon ECR 私有存儲庫

您可以將「開放容器倡議」(OCI) 成品推送至 Amazon ECR 儲存庫。要查看此功能的示例,請使用以下步驟將 Helm 圖表推送到 Amazon ECR。

有關在 Amazon 上使用 Amazon ECR 託管的頭盔圖表的信息EKS,請參閱在 Amazon EKS 集群上安裝頭盔圖

將頭盔圖推到 Amazon 存ECR儲庫
  1. 安裝 Helm 用戶端的最新版本。這些步驟是使用 Helm 版本 3.8.2 進行編寫。如需詳細資訊,請參閱安裝 Helm

  2. 使用下列步驟來建立測試 Helm Chart。如需詳細資訊,請參閱 Helm Docs - 開始使用

    1. 建立一個名為 helm-test-chart 的 Helm Chart 並清除 templates 目錄的內容。

      helm create helm-test-chart rm -rf ./helm-test-chart/templates/*
    2. 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
  3. 封裝圖表。輸出將包含您在推送 Helm Chart 時使用的封裝圖表的檔案名稱。

    cd ../.. helm package helm-test-chart

    輸出

    Successfully packaged chart and saved it to: /Users/username/helm-test-chart-0.1.0.tgz
  4. 建立儲存庫以存放 Helm Chart。儲存庫的名稱應與您在步驟 2 中建立 Helm Chart 時使用的名稱相符。如需詳細資訊,請參閱建立 Amazon ECR 私有儲存庫來存放映像檔

    aws ecr create-repository \ --repository-name helm-test-chart \ --region us-west-2
  5. 向您打算推送 Helm 圖的 Amazon ECR 註冊表驗證您的 Helm 客戶端。所用的每個登錄檔皆必須取得身分驗證字符,字符有效期間為 12 個小時。如需詳細資訊,請參閱Amazon 的私有註冊表身份 ECR

    aws ecr get-login-password \ --region us-west-2 | helm registry login \ --username AWS \ --password-stdin aws_account_id.dkr.ecr.region.amazonaws.com
  6. 使用 helm push 命令推送 Helm Chart。輸出應包括 Amazon 存ECR儲庫URI和SHA摘要。

    helm push helm-test-chart-0.1.0.tgz oci://aws_account_id.dkr.ecr.region.amazonaws.com/
  7. 描述您的 Helm Chart。

    aws ecr describe-images \ --repository-name helm-test-chart \ --region us-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" } ] }
  8. (選擇性) 如需其他步驟,請安裝 Helm 組態映射並開始使用 Amazon EKS。如需詳細資訊,請參閱在 Amazon EKS 集群上安裝頭盔圖