Amazon 中的緩存問題進行故障排除 ECR - Amazon ECR

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

Amazon 中的緩存問題進行故障排除 ECR

在使用提取快取規則提取上游映像時,以下是您可能會收到的最常見錯誤。

儲存庫不存在

指出存放庫不存在的錯誤通常是由 Amazon ECR 私有登錄中不存在的存放庫或未授予IAM主體提取上游映像的ecr:CreateRepository權限所造成。若要解決此錯誤,您應該先確認 pull 命令URI中的儲存庫是否正確、提取上游映像的IAM主體授與所需的IAM權限,或者在執行上游映像提取之前,先在 Amazon ECR 私有登錄中建立要推送到的上游映像存放庫。如需所需IAM權限的詳細資訊,請參閱 IAM將上游註冊表與 Amazon ECR 私有註冊表同步所需的許可

以下為此錯誤的範例。

Error response from daemon: repository 111122223333.dkr.ecr.us-east-1.amazonaws.com/ecr-public/amazonlinux/amazonlinux not found: name unknown: The repository with name 'ecr-public/amazonlinux/amazonlinux' does not exist in the registry with id '111122223333'
找不到要求的影像

指示找不到映像的錯誤通常是由於上游登錄中不存在的映像,或者沒有授予提取上游映像的IAM主體的ecr:BatchImportUpstreamImage權限,但是已在 Amazon ECR 私有註冊表中建立存放庫的主體所造成。若要解決此錯誤,您應該驗證上游映像和映像標籤名稱是否正確,且其存在,且必要的IAM權限已授與提取上游映像的IAM主體。如需所需IAM權限的詳細資訊,請參閱IAM將上游註冊表與 Amazon ECR 私有註冊表同步所需的許可

以下為此錯誤的範例。

Error response from daemon: manifest for 111122223333.dkr.ecr.us-east-1.amazonaws.com/ecr-public/amazonlinux/amazonlinux:latest not found: manifest unknown: Requested image not found
403 從碼頭集線器存儲庫拉出時禁止

從標記為 Docker 官方映像的 Docker Hub 存儲庫中提取時,您必須在您使用的/library/中URI包含。例如:aws_account_id.dkr.ecr.region.amazonaws.com/docker-hub/library/image_name:tag。如果您省略 Docker Hub 官方映像檔的 /library/,當您嘗試使用提取快取規則提取映像時,將會傳回 403 Forbidden 錯誤。如需詳細資訊,請參閱在 Amazon 中通過緩存規則拉動圖像 ECR

以下為此錯誤的範例。

Error response from daemon: failed to resolve reference "111122223333.dkr.ecr.us-west-2.amazonaws.com/docker-hub/amazonlinux:2023": pulling from host 111122223333.dkr.ecr.us-west-2.amazonaws.com failed with status code [manifests 2023]: 403 Forbidden