I run Docker Desktop on my Linux PC. I want to use my raspberry pi as a docker registry, using it’s name (rpi.home
) when pushing (instead of its IP address). I also want to connect via https. Following this guide: Test an insecure registry
My steps on my raspberry pi:
mkdir certs
openssl req -newkey rsa:4096 -nodes -sha256 -keyout certs/domain.key -addext "subjectAltName = DNS:rpi.home" -x509 -days 365 -out certs/domain.crt
docker run -d --restart=always --name registry -v $HOME/certs:/certs -e REGISTRY_HTTP_ADDR=0.0.0.0:443 -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key -p 443:443 registry
My steps on my Linux PC:
scp pi@rpi.home:certs/domain.crt ca.crt
sudo mkdir -p /etc/docker/certs.d/rpi.home/
sudo cp ca.crt /etc/docker/certs.d/rpi.home/
After these steps, I would expect that I can push to the registry using docker push:
docker push rpi.home/test-image
However, I get this error:
Using default tag: latest
The push refers to repository [rpi.home/test-image]
Get "https://rpi.home/v2/": x509: certificate signed by unknown authority
How can I fix this error?