- Creamos el directorio data en la carpeta del usuario que ejecuta docker.
mkdir ~/data
- Para crear la configuración del registro ejecutamos el comando:
docker run -it --rm --entrypoint cat registry:2 \
/etc/docker/registry/config.yml > ~/data/config.yml
- Como se trata de una configuración para tener una cache local de pruebas no son necesarios los certificados para tls por lo que el fichero config.yml quedaría así:
version: 0.1
log:
fields:
service: registry
storage:
cache:
blobdescriptor: inmemory
filesystem:
rootdirectory: /var/lib/registry
http:
addr: :5000
headers:
X-Content-Type-Options: [nosniff]
health:
storagedriver:
enabled: true
interval: 10s
threshold: 3
- Creamos el directorio /var/lib/registry y ejecutamos el servidor cache.
docker run -d --restart=always -p 5000:5000 --name v2-mirror \
-v ~/data:/var/lib/registry registry:2 /var/lib/registry/config.yml
- Ahora ya podemos decirle al cliente de docker que se conecte a nuestro registro.
Para ello creamos el fichero /etc/docker/daemon.json en la máquina/s cliente con el siguiente contenido:
{
"registry-mirrors": ["http://dirección_del_servidor_que_ejecuta_la_cache:5000"]
}