小编can*_*ide的帖子

使用Docker Hub和私有映像的Kubernetes PullImageError

我正在努力让Kubernetes使用我的私有hub.docker.com注册表图像.

我正在使用kubectl版本: Client Version: version.Info{Major:"1", Minor:"1+", GitVersion:"v1.1.0-alpha.0.1588+e44c8e6661c931", GitCommit:"e44c8e6661c931f7fd434911b0d3bca140e1df3a", GitTreeState:"clean"} Server Version: version.Info{Major:"1", Minor:"1", GitVersion:"v1.1.3", GitCommit:"6a81b50c7e97bbe0ade075de55ab4fa34f049dc2", GitTreeState:"clean"}

和1.7.4Mac OS X上的VagrantYosemite 10.10.5

我按照这里给出的说明操作:https://github.com/kubernetes/kubernetes/blob/release-1.1/docs/user-guide/images.md#pre-pulling-images

简而言之,它表示您应该登录到注册表,然后base64编码结果的内容.docker/config.json,并在yaml文档中使用它,如下所示:

apiVersion: v1
kind: Secret
metadata:
  name: myregistrykey
data:
  .dockercfg: eyAiYXV0aHMiOiB7ICJodHRwczovL2luZGV4LmRvY2tlci5pby92MS8iOiB7ICJhdXRoIjogImFXNTBjbWx1YzJsak9tSTJVVTR5Z...h1YkBpbnRyaW5zaWMud29ybGQiIH0gfSB9Cg==
type: kubernetes.io/dockercfg
Run Code Online (Sandbox Code Playgroud)

然后将其喂给kubectl.然后myregistrykey我在我的pod定义中使用了生成的键(此处称为):

apiVersion: v1
kind: Pod
metadata:
  name: authorities-backend
spec:
  containers:
    - name: authorities-backend
      image: intrinsic/authorities-backend:latest
  imagePullSecrets:
    - name: myregistrykey
Run Code Online (Sandbox Code Playgroud)

并且kubectl create它.

但是,kubectl无法检索图像:

[root@kubernetes-master intrinsic]# kubectl get pods
NAME                  READY     STATUS           RESTARTS   AGE
authorities-backend   0/1 …
Run Code Online (Sandbox Code Playgroud)

docker kubernetes docker-registry

7
推荐指数
2
解决办法
5179
查看次数

标签 统计

docker ×1

docker-registry ×1

kubernetes ×1