如何访问私有 docker 中心图像?
How to access private docker hub image?
我正在尝试将私有 docker 镜像拉入数字海洋 Kubernetes 集群。我收到此错误:
Failed to pull image "testuser/services:latest": rpc error: code =
Unknown desc = failed to pull and unpack image
"docker.io/testuser/services:latest": failed to resolve reference
"docker.io/testuser/services:latest": pull access denied, repository
does not exist or may require authorization: server message:
insufficient_scope: authorization failed
我按照指南配置私有注册表:https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/,执行命令:
kubectl create secret generic regcred
--from-file=.dockerconfigjson=<path/to/.docker/config.json>
--type=kubernetes.io/dockerconfigjson
我正在按照本指南在 Kubernetes 上使用 Docker 容器创建 Kubernetes 集群:https://www.digitalocean.com/community/tutorials/how-to-automate-deployments-to-digitalocean-kubernetes-with-circleci
当我执行kubectl apply -f ~/kube-general/
时,pod创建成功,但是拉取镜像失败,显示上面的错误。
为了允许访问私有 docker 中心图像,我已将 imagePullSecrets
添加到应用程序-service.yml :
apiVersion: apps/v1
kind: Deployment
metadata:
name: testuser
namespace: default
labels:
app: testuser
spec:
replicas: 1
selector:
matchLabels:
app: testuser
template:
metadata:
labels:
app: testuser
spec:
containers:
- name: testuser
image: testuser/services:latest
ports:
- containerPort: 5000
name: http
imagePullSecrets:
- name: regcred
应用-deployment.yaml:
apiVersion: v1
kind: Service
metadata:
name: services
namespace: default
labels:
app: services
spec:
type: ClusterIP
ports:
- port: 5000
targetPort: http
name: http
selector:
app: services
更新:
从我的本地机器中提取图像按预期工作:
docker pull testuser/services:latest
latest: Pulling from testuser/services
Digest: sha256:35db6c6e9344043a67abe2e0a2f2583c036479728c944dc4136494f0d09a44fe
Status: Image is up to date for testuser/services:latest
docker.io/testuser/services:latest
我遵循的过程与:https://www.digitalocean.com/community/questions/private-docker-registry
你能试试下面的吗:
kubectl create secret docker-registry dockerreg --docker-server=docker.io --docker-username=alloweduserid --docker-password=password --docker-email=user@abc.com
我正在尝试将私有 docker 镜像拉入数字海洋 Kubernetes 集群。我收到此错误:
Failed to pull image "testuser/services:latest": rpc error: code = Unknown desc = failed to pull and unpack image "docker.io/testuser/services:latest": failed to resolve reference "docker.io/testuser/services:latest": pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed
我按照指南配置私有注册表:https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/,执行命令:
kubectl create secret generic regcred
--from-file=.dockerconfigjson=<path/to/.docker/config.json>
--type=kubernetes.io/dockerconfigjson
我正在按照本指南在 Kubernetes 上使用 Docker 容器创建 Kubernetes 集群:https://www.digitalocean.com/community/tutorials/how-to-automate-deployments-to-digitalocean-kubernetes-with-circleci
当我执行kubectl apply -f ~/kube-general/
时,pod创建成功,但是拉取镜像失败,显示上面的错误。
为了允许访问私有 docker 中心图像,我已将 imagePullSecrets
添加到应用程序-service.yml :
apiVersion: apps/v1
kind: Deployment
metadata:
name: testuser
namespace: default
labels:
app: testuser
spec:
replicas: 1
selector:
matchLabels:
app: testuser
template:
metadata:
labels:
app: testuser
spec:
containers:
- name: testuser
image: testuser/services:latest
ports:
- containerPort: 5000
name: http
imagePullSecrets:
- name: regcred
应用-deployment.yaml:
apiVersion: v1
kind: Service
metadata:
name: services
namespace: default
labels:
app: services
spec:
type: ClusterIP
ports:
- port: 5000
targetPort: http
name: http
selector:
app: services
更新:
从我的本地机器中提取图像按预期工作:
docker pull testuser/services:latest
latest: Pulling from testuser/services
Digest: sha256:35db6c6e9344043a67abe2e0a2f2583c036479728c944dc4136494f0d09a44fe
Status: Image is up to date for testuser/services:latest
docker.io/testuser/services:latest
我遵循的过程与:https://www.digitalocean.com/community/questions/private-docker-registry
你能试试下面的吗:
kubectl create secret docker-registry dockerreg --docker-server=docker.io --docker-username=alloweduserid --docker-password=password --docker-email=user@abc.com