首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >kubectl运行本地docker镜像- ImagePullBackOff状态

kubectl运行本地docker镜像- ImagePullBackOff状态
EN

Stack Overflow用户
提问于 2017-04-18 10:03:50
回答 2查看 8.6K关注 0票数 2

我在本地机器上构建了docker镜像,并尝试使用kubectl拉取docker镜像。但它并没有启动docker容器。

图像以docker命令开始。

代码语言:javascript
运行
复制
REPOSITORY                                            TAG                 IMAGE ID            CREATED             SIZE
tomcat9                                               latest              8b228ac6f19f        About an hour ago   111 MB

它可以通过ImagePullBackOff消息进行统计。

代码语言:javascript
运行
复制
$ kubectl get pods
NAME                             READY     STATUS             RESTARTS   AGE
tomcat9-511437148-sgkwp          0/1       ImagePullBackOff   0          9m

如何让kubectl运行此docker镜像?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2017-04-18 21:32:33

我从你下面的评论中看到你在本地使用Minikube。

Minikube在虚拟机内运行,在Minikube内运行的Docker和在您的机器上运行的Docker是两个独立的实例,因此将无法访问相同的镜像,但是您可以使用eval $(minikube docker-env)将Minikube内的Docker链接到您的本地Docker,您可以读取更多here

此外,您还可以通过运行kubectl describe pods tomcat9-511437148-sgkwp获取有关ImagePullBackOff发生原因的更多信息。

票数 10
EN

Stack Overflow用户

发布于 2017-04-19 10:37:11

我使用了这个yaml文件,现在镜像已经部署到集群上了。

代码语言:javascript
运行
复制
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: tomcat9
  labels:
    app: tomcat9
spec:
  template:
    metadata:
      labels:
        app: tomcat9
    spec:
      containers:
      - image: tomcat9:latest
        name: tomcat9
        imagePullPolicy: IfNotPresent
        ports:
         - name: http
           containerPort: 8080
---
apiVersion: v1
kind: Service
metadata:
  name: tomcat9
  labels:
    app: tomcat9
spec:
  ports:
  - nodePort: 30080
    port: 8080
    protocol: TCP
    targetPort: 8080    
  selector:
    app: tomcat9
  sessionAffinity: None
  type: NodePort
status:
  loadBalancer: {}    
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43462384

复制
相关文章

相似问题

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