How to install a CA in Minikube so image pulls are trusted How to install a CA in Minikube so image pulls are trusted kubernetes kubernetes

How to install a CA in Minikube so image pulls are trusted


I had to do something similar recently. You should be able to just hop on the machine with minikube ssh and then follow the directions here

https://docs.docker.com/engine/security/certificates/#understanding-the-configuration

to place the CA in the appropriate directory (/etc/docker/certs.d/[registry hostname]/). You shouldn't need to restart the daemon for it to work.


Well, the minikube has a feature to copy all the contents of ~/.minikube/files directory to its VM filesystem. So you can place your certificates under

~/.minikube/files/etc/docker/certs.d/<docker registry host>:<docker registry port> path 

and these files will be copied into the proper destination on minikube startup automagically.


Shell into Minikube.

Copy your certificates to:

/etc/docker/certs.d/<docker registry host>:<docker registry port>

Ensure that your permissions are correct on the certificate, they must be at least readable.

Restart Docker (systemctl restart docker)

Don't forget to create a secret if your Docker Registry uses basic authentication:

kubectl create secret docker-registry service-registry --docker-server=<docker registry host>:<docker registry port> --docker-username=<name> --docker-password=<pwd> --docker-email=<email>