如何从本地docker映像启动新的k8s pod?

时间:2018-12-06 14:34:13

标签: docker minikube

我正在学习docker和k8s。现在我在MAC Mojave上有以下本地docker映像: enter image description here

请注意,由于某种原因我无法连接“ gcr.io”,因此我在gitHub中创建了一个docker文件:
从gcr.io/google_containers/pause-amd64:3.0

然后我利用“ hub.docker.com”基于该gitHub docker文件创建自动构建: enter image description here

然后我运行 docker pull docker标签,因此这就是在docker映像之后有gcr.io映像的原因。 我安装了minikube版本:0.25.0,并使用yaml(kubectl)创建了一个pod。运行 kubectl get pods ,该容器的状态停留在“ ContainerCreating”中。然后运行 minikube日志,它显示提取图像失败“ gcr.io/google_containers/pause-amd64:3.0 enter image description here

我很困惑: 我已经有 gcr.io/google_containers/pause-amd64 的本地映像,为什么k8仍然尝试连接gcr.io而不是本地映像?如何让k8s从本地获取图像?

2 个答案:

答案 0 :(得分:1)

最后,我解决了这个问题:

  • 运行“ minikube ssh”
  • docker登录docker hub
  • 泊坞窗中心中的docker pull pause-amd64:3.0
  • docker标记为“ gcr.io/google_containers/pause-amd64:3.0”

现在,广告连播状态为“正在运行” :) 因此,原因是minikube利用了除主机docker以外的其他节点上的docker ...

答案 1 :(得分:0)

可能与imagePullPolicy有关,请尝试指定imagePullPolicy:否则,将不会使用本地图像。另外,您可以看看此tutorial