繁体   English   中英

如何在集群 ip 上设置私有注册凭据

[英]How to setup private registery credentials on cluster ip

我们在 kubernetes 集群上使用 nexus 设置了私有注册。 我们在集群 ip 上公开我们的注册以获取专用 ip,我们可以使用 docker 拉推送。 当我使用机密为私有注册设置 docker 凭据时,出现如下错误

Failed to pull image "ip:port/repository/ydocker-repo/apps:tag": rpc error: code = Unknown desc = Error response from daemon: Get http://ip:port/v2/repository/docker/app/manifests/1.0: no basic auth credentials

我已经设置了服务帐户,但我再次遇到同样的错误。

我在这里做什么错了。

下面是我的部署代码

apiVersion: apps/v1
kind: Deployment
metadata:
  name: xyz
spec:
  selector:
    matchLabels:
      app: xyz
  replicas: 3
  template:
    metadata:
      labels:
        app: xyz
    spec:
     containers:
     - name: yuwee-app-server
       image: ip:port/repository/ydocker-repo/apps:tag
       imagePullPolicy: "Always"
       stdin: true
       tty: true
       ports:
       - containerPort: port-number
       imagePullPolicy: Always
     imagePullSecrets:
     - name: myregistrykey
     restartPolicy: Always
     serviceAccountName: default

有人知道如何为 clusterIP 设置注册机密吗?

所以我发现了问题。 我的部署在一个命名空间内,我在默认命名空间内创建了秘密,它应该在该命名空间内。 现在它按我的预期工作。

我通常按​​照这个k8s doc 在私有 docker 注册表上配置推/拉。

创建一个秘密:

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

在部署时引用机密:

  imagePullSecrets:
  - name: docker-secret

要检查机密信息是否正确,请解码机密.dockerconfigjson:值。 应该是类似的东西:

{"auths":{"your.private.registry.example.com":{"username":"janedoe","password":"xxxxxxxxxxx","email":"jdoe@example.com","auth":"c3R...zE2"}}}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM