[英]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.