【问题标题】:Getting ImagePullBackOff when starting a POD is AWS EKS启动 POD 时获取 ImagePullBackOff 是 AWS EKS
【发布时间】:2020-06-09 02:52:04
【问题描述】:

当我的 pod 被部署并尝试拉取图像时,我收到以下错误。

Failed to pull image "foyer-api:latest": rpc error: code = Unknown desc = failed to pull and unpack image "docker.io/library/foyer-api:latest": failed to resolve reference "docker.io/library/foyer-api:latest": pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed

这是 Pod Yaml

apiVersion: v1
kind: Pod
metadata:
  name: foyer-api-test
  labels:
    app: foyer-api-test
spec:
  containers:
    - name: foyer-api
      image: foyer-api:latest
      ports:
       - containerPort: 80

【问题讨论】:

  • 你真的有完整的image: 123456789012.dkr.us-east-1.amazonaws.com/foyer-api 名字吗?

标签: docker kubernetes amazon-eks amazon-ecr


【解决方案1】:

要从私有注册表中提取图像,请单击here

基本上,您需要使用 docker 凭据创建一个秘密。例如,使用命令行

$ kubectl create secret docker-registry regcred --docker-server=<your-registry-server> --docker-username=<your-name> --docker-password=<your-pword> --docker-email=<your-email>

然后在imagePullSecrets中使用

apiVersion: v1
kind: Pod
metadata:
  name: foyer-api-test
  labels:
    app: foyer-api-test
spec:
  containers:
  - name: foyer-api
    image: foyer-api:latest
    ports:
    - containerPort: 80
  imagePullSecrets:
  - name: regcred

【讨论】:

  • 这是否适用于 aws ecr?我是否为此使用自己的 aws 信息?
  • 是的,将与 ecr 一起使用,请查看 stackoverflow.com/questions/49654457/… 如何为 ecr 创建密钥
  • 我认为此解决方案不适合 ECR,因为您在 EKS (EC2) 上,您可以附加一个角色以从您的 ECR 存储库中提取图像。
猜你喜欢
  • 2021-07-03
  • 2022-12-19
  • 2022-07-08
  • 1970-01-01
  • 2022-01-22
  • 2021-06-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-15
相关资源
最近更新 更多