Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Access local docker images with k3s

Is there any way to access local docker images directly (without using 'docker save') with k3s?

Like minikube accesses local docker images after running this command

eval $(minikube docker-env)

A little bit of background.

I have set up a machine using Ubuntu 19.04 as 'master' and raspberry pi as 'worker' using k3s. Now, I want to use a local image to create a deployment on the worker node.

Update

Adding screenshot as said in the comment below.

Screenshot for the image listings

enter image description here

like image 871
Naveed Avatar asked Aug 21 '19 10:08

Naveed


2 Answers

You can start k3s like this sudo k3s server --docker which will use host's Docker rather than containerd. This will make all local images available to k3s and if your ImagePullPolicy is IfNotPresent k3s will use it rather than trying to pull it.

like image 165
foobarto Avatar answered Oct 29 '22 04:10

foobarto


While this doesn't make all Docker images available,, a useful work-around is to export local Docker images and import them to your ctr:

docker save my/local-image:v1.2.3 | sudo k3s ctr images import -

This will make them available on-demand to your k3s cluster. This is useful for users who cannot get k3s server to work with the --docker flag.

like image 3
Thomas Anderson Avatar answered Oct 29 '22 04:10

Thomas Anderson