docker-repo/docker-compose.yml

60 lines
1.3 KiB
YAML

services:
caddy:
image: caddy:2-alpine
restart: unless-stopped
ports:
- "80:80"
- "443:443"
- "443:443/udp"
volumes:
- ./data/caddy/data:/data
- ./data/caddy/config:/config
entrypoint: ["sh", "-c"]
command:
- |
echo '${DOMAIN} {
handle /v2/* {
reverse_proxy registry:5000
}
handle {
reverse_proxy auth:5000
}
}' | caddy run --adapter caddyfile --config -
depends_on:
- registry
- auth
networks:
- registry_net
registry:
image: registry:2
restart: unless-stopped
environment:
REGISTRY_AUTH: htpasswd
REGISTRY_AUTH_HTPASSWD_REALM: Docker Registry
REGISTRY_AUTH_HTPASSWD_PATH: /auth/htpasswd
REGISTRY_STORAGE_DELETE_ENABLED: "true"
volumes:
- ./data/registry:/var/lib/registry
- ./data/htpasswd:/auth:ro
networks:
- registry_net
auth:
build: ./auth-app
restart: unless-stopped
environment:
ADMIN_USER: ${ADMIN_USER}
ADMIN_PASSWORD: ${ADMIN_PASSWORD}
SECRET_KEY: ${SECRET_KEY}
DB_PATH: /data/users.db
HTPASSWD_PATH: /auth/htpasswd
volumes:
- ./data/auth:/data
- ./data/htpasswd:/auth
networks:
- registry_net
networks:
registry_net: