如何在Minikube中使用本地docker镜像?

我有几个要使用的docker镜像minikube。我不想先上传然后下载相同的图像,而不仅仅是直接使用本地图像。我该怎么做呢?

我尝试过的东西:

1.我尝试运行这些命令(分别两次删除minikube实例并重新开始)

kubectl run hdfs --image=fluxcapacitor/hdfs:latest --port=8989

kubectl run hdfs --image=fluxcapacitor/hdfs:latest --port=8989 imagePullPolicy=Never

输出:

NAME                    READY     STATUS              RESTARTS   AGE

hdfs-2425930030-q0sdl 0/1 ContainerCreating 0 10m

它只是停留在某些状态,但从未达到就绪状态。

2.我尝试创建一个注册表,然后将图像放入其中,但这也不起作用。我可能做错了,但是找不到正确的说明来完成此任务。

请提供说明以在本地kubernetes实例中使用本地docker映像。

操作系统:ubuntu 16.04

Docker:Docker version 1.13.1,build 092cba3

Kubernetes:

Client Version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.3", GitCommit:"029c3a408176b55c30846f0faedf56aae5992e9b", GitTreeState:"clean", BuildDate:"2017-02-15T06:40:50Z", GoVersion:"go1.7.4", Compiler:"gc", Platform:"linux/amd64"}

Server Version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.2", GitCommit:"08e099554f3c31f6e6f07b448ab3ed78d0520507", GitTreeState:"clean", BuildDate:"1970-01-01T00:00:00Z", GoVersion:"go1.7.1", Compiler:"gc", Platform:"linux/amd64"}

如果有人可以帮助我获得使用docker-compose做到这一点的解决方案,那就太好了。谢谢。

编辑:

图片载入eval $(minikube docker-env

REPOSITORY                                            TAG                 IMAGE ID            CREATED             SIZE

fluxcapacitor/jupyterhub latest e5175fb26522 4 weeks ago 9.59 GB

fluxcapacitor/zeppelin latest fe4bc823e57d 4 weeks ago 4.12 GB

fluxcapacitor/prediction-pmml latest cae5b2d9835b 4 weeks ago 973 MB

fluxcapacitor/scheduler-airflow latest 95adfd56f656 4 weeks ago 8.89 GB

fluxcapacitor/loadtest latest 6a777ab6167c 5 weeks ago 899 MB

fluxcapacitor/hdfs latest 00fa0ed0064b 6 weeks ago 1.16 GB

fluxcapacitor/sql-mysql latest 804137671a8c 7 weeks ago 679 MB

fluxcapacitor/metastore-1.2.1 latest ea7ce8c5048f 7 weeks ago 1.35 GB

fluxcapacitor/cassandra latest 3cb5ff117283 7 weeks ago 953 MB

fluxcapacitor/apachespark-worker-2.0.1 latest 14ee3e4e337c 7 weeks ago 3.74 GB

fluxcapacitor/apachespark-master-2.0.1 latest fe60b42d54e5 7 weeks ago 3.72 GB

fluxcapacitor/package-java-openjdk-1.8 latest 1db08965289d 7 weeks ago 841 MB

gcr.io/google_containers/kubernetes-dashboard-amd64 v1.5.1 1180413103fd 7 weeks ago 104 MB

fluxcapacitor/stream-kafka-0.10 latest f67750239f4d 2 months ago 1.14 GB

fluxcapacitor/pipeline latest f6afd6c5745b 2 months ago 11.2 GB

gcr.io/google-containers/kube-addon-manager v6.1 59e1315aa5ff 3 months ago 59.4 MB

gcr.io/google_containers/kubedns-amd64 1.9 26cf1ed9b144 3 months ago 47 MB

gcr.io/google_containers/kube-dnsmasq-amd64 1.4 3ec65756a89b 5 months ago 5.13 MB

gcr.io/google_containers/exechealthz-amd64 1.2 93a43bfb39bf 5 months ago 8.37 MB

gcr.io/google_containers/pause-amd64

回答:

如自述文件所述,您可以使用来重用Minikube中的Docker守护进程eval $(minikube docker-

env)

因此,要使用图像而不上传图像,可以按照以下步骤操作:

  1. 用以下命令设置环境变量 eval $(minikube docker-env)
  2. 使用Minikube的Docker守护进程构建映像(例如docker build -t my-image .
  3. 在pod规格中将图像设置为build标签(例如my-image
  4. 将设置imagePullPolicyNever,否则Kubernetes将尝试下载图像。

您必须eval $(minikube docker-env)在要使用的每个终端上运行,因为它仅设置当前Shell会话的环境变量。

以上是 如何在Minikube中使用本地docker镜像? 的全部内容, 来源链接: utcz.com/qa/434566.html

回到顶部