gpt4 book ai didi

docker - JFrog Docker注册表未在Kubernetes中提取图像

转载 作者:行者123 更新时间:2023-12-02 21:10:14 27 4
gpt4 key购买 nike

我正在使用JFrog作为Docker注册表。

如果我尝试手动拉出图像,则可以正常工作,但是当我通过在helm chart和helm install命令中进行尝试来进行相同操作时,会抛出错误:

Error: ImagePullBackOff  
pulling image registry_name/jfrogk8s:1.0
Failed to pull image registry_name/jfrogk8s:1.0: rpc error: code = Unknown desc = Error response from daemon: Get https://dip-docker-dip.bintray.io/v2/jfrogk8s/manifests/1.0: unauthorized: Unauthorized"

我已经在“/etc/docker/daemon.json”中包含了docker注册表

最佳答案

它清楚地说-unauthorized: Unauthorized
拉取内部镜像时不会调用docker注册表,即使您确实将docker registry in "/etc/docker/daemon.json"放入kubernetes环境中也是如此。因此,您需要创建一个Docker Registry Secret并稍后在 Helm 安装中使用它来告诉kubernetes使用此 secret 来提取内部镜像:

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

where:

  • <your-registry-server> is your Private Docker Registry FQDN. (https://index.docker.io/v1/ for DockerHub)

  • <your-name> : is your Docker username.

  • <your-pword>: is your Docker password.
  • <your-email>: is your Docker email.


要验证是否创建了Docker注册表 secret regcred,请执行
kubectl get secret regcred --output=yaml

然后在您的 Helm 图表 value.yaml中添加以下行
imagePullSecret: regcred

如果需要这样做,您的 deploy.yaml的Kuberentes方式将如下所示:
apiVersion: v1
kind: Pod
metadata:
name: private-reg
spec:
containers:
- name: private-reg-container
image: <your-private-image>
imagePullSecrets:
- name: regcred

关于docker - JFrog Docker注册表未在Kubernetes中提取图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55115769/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com