Suitable to work with Drone-ci for hosting private #docker images.
Sample docker-compose for custom docker registry
This one brings up private docker registry with ui. First you'll need to generate password for it:
docker run \ --entrypoint htpasswd registry:2 \ -Bbn user mypassword > auth/registry.password
version: "3"services: registry: container_name: docker__registry image: registry:2 ports: - 5000:5000 restart: always environment: - REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY=/data - REGISTRY_AUTH=htpasswd - REGISTRY_AUTH_HTPASSWD_REALM=Registry - REGISTRY_AUTH_HTPASSWD_PATH=/auth/registry.password - REGISTRY_HTTP_SECRET=password - REGISTRY_STORAGE_DELETE_ENABLED=true volumes: - ./registry/auth:/auth - ./registry/data:/data ui: container_name: docker__ui image: parabuzzle/craneoperator:latest ports: - 80:80 restart: always environment: - REGISTRY_HOST=registry - REGISTRY_PORT=5000 - REGISTRY_PROTOCOL=http - ALLOW_REGISTRY_LOGIN=true - REGISTRY_ALLOW_DELETE=true - USERNAME=registry - PASSWORD=password
Squash layers on registry
Sometimes you need to squash all layers in docker registry to free up disk space.
- Run this command to mark oldest layers
# Try this firstdocker run \ --rm anoxis/registry-cli \ -r https://registry.url \ -l user:password \ --delete \ --num 2# Then this docker run -it \ -v /path/to/registry/data:/registry \ -e REGISTRY_URL=https://registry.url \ -e DRY_RUN="false" \ -e REGISTRY_AUTH="user:password" \ mortensrasmussen/docker-registry-manifest-cleanup