kubectl运行本地docker image- ImagePullBackOff状态

时间:2017-04-18 02:03:50

标签: kubernetes kubectl

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

图像以docker命令开始。

REPOSITORY                                            TAG                 IMAGE ID            CREATED             SIZE
tomcat9                                               latest              8b228ac6f19f        About an hour ago   111 MB

使用ImagePullBackOff按摩进行统计。

$ kubectl get pods
NAME                             READY     STATUS             RESTARTS   AGE
tomcat9-511437148-sgkwp          0/1       ImagePullBackOff   0          9m

如何让kubectl运行此泊坞窗图像?

由于

2 个答案:

答案 0 :(得分:8)

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

Minikube在虚拟机内部运行,Docker在Minikube内运行,而在你机器上运行的Docker是两个独立的实例,因此无法访问相同的图像,但是你可以使用{将Minikube内的Docker链接到本地​​Docker {1}},您可以阅读更多here

此外,您可以通过eval $(minikube docker-env)获取有关ImagePullBackOff发生原因的更多信息。

答案 1 :(得分:-1)

我使用了这个yaml文件,现在图像部署在集群上。

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: {}