I have a docker image called docker-hello-world - all it does is print Hello World to the log using the JRE. When tested it works fine.

Then, I import an image into Kubernetes Docker and run – still no issues.

docker images -a REPOSITORY TAG IMAGE ID CREATED SIZE docker-hello-world latest 9a161d166742 20 hours ago 83.17 MB 
  1. When I try and deploy into Kubernetes with kubectl run docker-hello-world --image=docker-hello-world:latest something goes wrong here – I tried the image id as well but I can’t understand why it can’t find the image.

It says deployment created.

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 

Logs:

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 

Im not sure why it can’t find the image.

But if I do from within Minikube:

docker build -t dummy:v1 ~/eclipse-workspace/HelloWorld/bin/ 

(I don’t really want do generate the image again)

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 

It seems to work ok

2

1 Answer

The version tag of the image docker-hello-world:latest is latest, which indicates the default ImagePullPolicy is Always (see pkg/apis/core/v1/defaults.go for v1.9.x and after). It will try to pull image from the hub and not use the image already present.

One option is set a specific tag rather than latest.

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.