首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我可以从私有存储库中拉取镜像,但不能使用它创建kubernetes部署?

为什么我可以从私有存储库中拉取镜像,但不能使用它创建kubernetes部署?
EN

Stack Overflow用户
提问于 2020-01-22 11:20:56
回答 1查看 168关注 0票数 0

我在一个私有docker集线器存储库中有一个容器镜像(在本例中我们将其命名为FOO ),在使用'docker login‘进行身份验证之后,我可以通过调用

代码语言:javascript
复制
docker pull myusername/FOO:1.0

我可以把它拉出来,在本地运行-效果很好。

但是,当我尝试使用该映像启动部署时-

代码语言:javascript
复制
kubectl create deployment footest --image=myusername/FOO:1.0

它无法拉取图像。但是,当我将图像设置为public时,一切工作正常。当它处于私有模式时,我不能使用它创建Kubernetes部署。

是否有任何迹象表明我应该在此处执行哪些后续步骤才能拉取此私有映像?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-22 11:54:26

您必须创建一个将存储repo身份验证详细信息的密钥。

您必须使用以下命令更新部署

代码语言:javascript
复制
imagePullSecrets:
    - name: myregistrykey

有关更多详细信息,请查看官方文档:https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/

示例:

使用私有回购镜像创建pod

代码语言:javascript
复制
apiVersion: v1
kind: Pod
metadata:
  name: private-reg
spec:
  containers:
  - name: private-reg-container
    image: <your-private-image>
  imagePullSecrets:
  - name: regcred

您可以使用以下命令创建sceret

代码语言:javascript
复制
kubectl create secret docker-registry regcred --docker-server=<your-registry-server> --docker-username=<your-name> --docker-password=<your-pword> --docker-email=<your-email>

其中:

代码语言:javascript
复制
<your-registry-server> is your Private Registry.
<your-name> is your Docker username.
<your-pword> is your Docker password.
<your-email> is your Docker email.
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59852142

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档