Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 如何向kubernetes推送和部署本地映像_Docker_Kubernetes - Fatal编程技术网

Docker 如何向kubernetes推送和部署本地映像

Docker 如何向kubernetes推送和部署本地映像,docker,kubernetes,Docker,Kubernetes,我已经开始学习库伯尼特斯。所以,我已经安装了minikube,我不知道如何将本地构建的映像推送到kubernetes。我接下来要做的是: minikube start eval $(minikube docker-env) docker build -t some_image 但是当我运行docker映像时,没有我的映像。那么,您能帮助我,如何推送和部署我的本地docker映像吗?您需要设置一个本地docker注册表,minikube可以使用该注册表从中提取映像。 检查此链接,该链接提

我已经开始学习库伯尼特斯。所以,我已经安装了minikube,我不知道如何将本地构建的映像推送到kubernetes。我接下来要做的是:

minikube start 
eval $(minikube docker-env) 
docker build -t some_image  

但是当我运行docker映像时,没有我的映像。那么,您能帮助我,如何推送和部署我的本地docker映像吗?

您需要设置一个本地docker注册表,minikube可以使用该注册表从中提取映像。 检查此链接,该链接提供了如何实现此目的的详细说明


您还可以设置自己的,并在YAML中使用它来提取图像。在minikube上运行pod之前,只需在图像上添加类似于
localhost:5000/图像名称的标签,并按下按钮即可

答案由@fatcook共享是一个很好的参考点,更简单的解决方案是

在构建docker映像之前,只需执行:
eval$(minikube docker env)

它将导出以下变量

export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="/Users/username/.minikube/certs"
export DOCKER_API_VERSION="x.yy"
# Run this command to configure your shell:
# eval $(minikube docker-env)
现在您可以构建镜像
docker build
,它将在minikube实例上可用


这是一种简单的肮脏方式。

好的,我已经尝试过了,但是当我运行kubectl get pods时,我的pod状态是CrashLoopBackOffIt,这意味着出于某种原因,您的容器正在启动,然后崩溃。尝试执行
kubectl日志pod name
kubectl描述pod name
并查看导致pod崩溃的原因。我遇到了类似的问题。在我的例子中使用了:最新的yaml。显然,latest是一种保留词。如果对于一个版本,我使用的是static:1.0,那么一切都正常。