我已经创建了码头注册作为一个吊舱与一个服务,它的工作登录,推拉。但是当我想要创建一个使用这个注册表的图像的荚时,kubelet无法从注册表获取图像。
我的吊舱注册表:
apiVersion: v1
kind: Pod
metadata:
name: registry-docker
labels:
registry: docker
spec:
containers:
- name: registry-docker
image: registry:2
volumeMounts:
- mountPath: /opt/registry/data
name: data
- mountPath: /opt/registry/auth
name: auth
ports:
- containerPort: 5000
env:
- name: REGISTRY_AUTH
value: htpasswd
- name: REGISTRY_AUTH_HTPASSWD_PATH
value: /opt/registry/auth/htpasswd
- name: REGISTRY_AUTH_HTPASSWD_REALM
value: Registry Realm
volumes:
- name: data
hostPath:
path: /opt/registry/data
- name: auth
hostPath:
path: /opt/registry/auth我想从注册表中创建:
apiVersion: v1
kind: Pod
metadata:
name: nginx
spec:
containers:
- name: nginx
image: 10.96.81.252:5000/nginx:latest
imagePullSecrets:
- name: registrypullsecret从注册表日志中获得的错误:
time="2018-08-09T07:17:21Z“level=warning msg=”错误授权上下文:领域的基本身份验证挑战\“注册表域”\“:无效的授权凭据”go.version=go1.7.6 http.request.host="10.96.81.252:5000“level=warning http.request.method=GET http.request.remoteaddr="10.40.0.0:59088”http.request.uri="/v2/“http.request.useragent="docker/18.06。0-ce go/go1.10.3 git-commit/0ffa 825内核/4.4.0-130-generic/linux arch/Aug 64 UpstreamClient(Go-http-client/1.1)“version=v2.6.2 10.40.0.0 - 09/Aug/2018:07:17:21 +0000 "GET /v2/ HTTP/1.1”401 87 "docker/18.06.0-ce go/go1.10.3git-commit/0ffa 825内核/4.4.0-130-泛型os/linux arch/amd64 64 UpstreamClient(Go client/1.1)“
我使用的秘密是从cat ~/.docker/config.json | base64创建的
apiVersion: v1
kind: Secret
metadata:
name: registrypullsecret
data:
.dockerconfigjson: ewoJImF1dGhzIjogewoJCSJsb2NhbGhvc3Q6NTAwMCI6IHsKCQkJImF1dGgiOiAiWVdSdGFXNDZaRzlqYTJWeU1USXoiCgkJfQoJfSwKCSJIdHRwSGVhZGVycyI6IHsKCQkiVXNlci1BZ2VudCI6ICJEb2NrZXItQ2xpZW50LzE4LjA2$
type: kubernetes.io/dockerconfigjson我对默认服务帐户所做的修改:
cat ./sa.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
creationTimestamp: 2018-08-03T09:49:47Z
name: default
namespace: default
# resourceVersion: "51625"
selfLink: /api/v1/namespaces/default/serviceaccounts/default
uid: 8eecb592-9702-11e8-af15-02f6928eb0b4
secrets:
- name: default-token-rfqfp
imagePullSecrets:
- name: registrypullsecret文件~/..docker/config.json:
{
"auths": {
"localhost:5000": {
"auth": "YWRtaW46ZG9ja2VyMTIz"
}
},
"HttpHeaders": {
"User-Agent": "Docker-Client/18.06.0-ce (linux)"
}发布于 2018-08-09 13:13:12
auths数据具有"localhost:5000“的登录凭据,但您的图像位于”10.96.81.252:5000/nginx:最新“。
https://stackoverflow.com/questions/51761968
复制相似问题