0

这就是我想要做的。我有一个位于私有 ECR 存储库中的 docker 映像。这个 docker 镜像是基于一个基础 docker 镜像构建的,该镜像也位于不同的私有 ECR 存储库中。我已经能够在本地从基础镜像构建这个 docker 镜像,但是在管道中执行这个 docker 镜像的构建时,我收到以下错误:

+ docker build -t $DOCKER_IMAGE .
Sending build context to Docker daemon  2.793MB
Step 1/8 : FROM base/docker-image:latest
pull access denied for base/docker-image, repository does not exist or may require 'docker login': denied: requested access to the resource is denied

由于我拥有的两个 docker 映像都存储在单独的私有 ECR 存储库中,因此我不确定是否需要在我的 EKS 集群中集成一个秘密,以便该管道能够从基础 docker 映像存储库中提取。我已经将一个秘密与允许拉取的 docker 图像集成在一起。任何意见将是有益的。

4

1 回答 1

0

我认为您需要登录 ECR 才能从私人仓库中获取图像。尝试在 docker build 命令之前添加登录命令 -

eval $(aws ecr get-login --no-include-email --region <aws_region>)

您还需要定义 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY 变量以允许登录 ecr 并在管道中安装 awscli(如果您以前没有的话)。

于 2021-06-11T20:10:29.617 回答