部署到 Minikube 时出现 ErrImageNeverPull
ErrImageNeverPull when deploying to Minikube
在 VS2019 中创建了一个简单的 MVC 应用程序。创建了一个 Dockerfile 并且 运行 docker 构建成功。
能够成功 运行 与:
docker run -d -p 8080:80 --name mvc2 mvc2
浏览到 localhost:8080 打开 mvc 主页。
问题是,当我部署到 minikube 时,我得到 ErrImageNeverPull
我的deployment.yaml:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: mvc
spec:
replicas: 1
template:
metadata:
labels:
app: mvc
spec:
containers:
- name: mvc
imagePullPolicy: Never # <-- here we go!
image: mvc2:latest
ports:
- containerPort: 80
输出:
可能你错过了执行 Minikube eval
环境 Docker env(eval $(minikube docker-env)
在 Unix 上,但是,因为你是 运行 Win,minikube docker-env | Invoke-Expression
) 在创建 Docker 图像之前。
所以,现在,您有两个选择:
- 使用Docker save命令复制
mvc2:latest
图像
- 使用 Docker 环境变量构建
mvc2:latest
图像,以便将其保存在 Minikube. 上
在 VS2019 中创建了一个简单的 MVC 应用程序。创建了一个 Dockerfile 并且 运行 docker 构建成功。
能够成功 运行 与:
docker run -d -p 8080:80 --name mvc2 mvc2
浏览到 localhost:8080 打开 mvc 主页。
问题是,当我部署到 minikube 时,我得到 ErrImageNeverPull
我的deployment.yaml:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: mvc
spec:
replicas: 1
template:
metadata:
labels:
app: mvc
spec:
containers:
- name: mvc
imagePullPolicy: Never # <-- here we go!
image: mvc2:latest
ports:
- containerPort: 80
输出:
可能你错过了执行 Minikube eval
环境 Docker env(eval $(minikube docker-env)
在 Unix 上,但是,因为你是 运行 Win,minikube docker-env | Invoke-Expression
) 在创建 Docker 图像之前。
所以,现在,您有两个选择:
- 使用Docker save命令复制
mvc2:latest
图像 - 使用 Docker 环境变量构建
mvc2:latest
图像,以便将其保存在 Minikube. 上