Joe*_*inz 9 image docker kubernetes minikube
我有一个名为 docker-hello-world 的 docker 映像 - 它所做的只是使用 JRE 将 Hello World 打印到日志中。经过测试,它工作正常。
然后,我将图像导入 Kubernetes Docker 并运行——仍然没有问题。
docker images -a
REPOSITORY TAG IMAGE ID CREATED SIZE
docker-hello-world latest 9a161d166742 20 hours ago 83.17 MB
Run Code Online (Sandbox Code Playgroud)
kubectl run docker-hello-world --image=docker-hello-world:latest
出现问题 - 我也尝试了图像 ID,但我不明白为什么它找不到图像。它说部署已创建。
kubectl get deployments
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
docker-hello-world 1 1 1 0 24s
kubectl get pods
NAME READY STATUS RESTARTS AGE
docker-hello-world-67c745cff4-sv77d 0/1 ErrImagePull 0 43s
Run Code Online (Sandbox Code Playgroud)
日志:
kubectl logs docker-hello-world-67c745cff4-sv77d
Error from server (BadRequest): container "docker-hello-world" in pod "docker-hello-world-67c745cff4-sv77d" is waiting to start: trying and failing to pull image
Run Code Online (Sandbox Code Playgroud)
我不知道为什么它找不到图像。
但是如果我在 Minikube 中这样做:
docker build -t dummy:v1 ~/eclipse-workspace/HelloWorld/bin/
Run Code Online (Sandbox Code Playgroud)
(我真的不想再次生成图像)
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
dummy v1 beae3bfd2327 32 seconds ago 83.17 MB
kubectl run --image=dummy:v1 dummy
deployment "dummy” created
kubectl get deployments
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
dummy 1 1 1 0 11s
kubectl get pods
NAME READY STATUS RESTARTS AGE
dummy-8496dd7d84-t4h66 0/1 Completed 4 1m
kubectl logs dummy-8496dd7d84-t4h66
Hello, World
Run Code Online (Sandbox Code Playgroud)
它似乎工作正常
镜像的版本标签docker-hello-world:latest
为latest
,表示默认ImagePullPolicy
为Always
(参见pkg/apis/core/v1/defaults.go
v1.9.x 及之后版本)。它将尝试从集线器中提取图像而不使用已经存在的图像。
一种选择是设置特定标签而不是latest
。
归档时间: |
|
查看次数: |
18945 次 |
最近记录: |