forked from coop-cloud/distribution
68 lines
1.7 KiB
YAML
68 lines
1.7 KiB
YAML
---
|
|
version: "3.7"
|
|
|
|
services:
|
|
registry:
|
|
image: "registry:2"
|
|
ports:
|
|
- "5000:5000"
|
|
volumes:
|
|
- "registry:/var/lib/registry"
|
|
networks:
|
|
- proxy
|
|
configs:
|
|
- source: config-yml-prod-v1
|
|
target: /etc/docker/registry/config.yml
|
|
deploy:
|
|
mode: replicated
|
|
replicas: 1
|
|
update_config:
|
|
failure_action: rollback
|
|
placement:
|
|
constraints:
|
|
- node.role == manager
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.services.registry.loadbalancer.server.port=5000"
|
|
- "traefik.http.routers.registry.rule=Host(`registry.swarm.autonomic.zone`)"
|
|
- "traefik.http.routers.registry.entrypoints=web-secure"
|
|
- "traefik.http.routers.registry.tls.certresolver=production"
|
|
|
|
registry-ui:
|
|
image: "joxit/docker-registry-ui:static"
|
|
ports:
|
|
- "3060:80"
|
|
networks:
|
|
- proxy
|
|
environment:
|
|
- REGISTRY_TITLE=Autonomic Container Catalogue
|
|
- URL=https://registry.swarm.autonomic.zone
|
|
depends_on:
|
|
- registry
|
|
deploy:
|
|
mode: replicated
|
|
replicas: 1
|
|
update_config:
|
|
failure_action: rollback
|
|
placement:
|
|
constraints:
|
|
- node.role == manager
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.services.registry-ui.loadbalancer.server.port=80"
|
|
- "traefik.http.routers.registry-ui.rule=Host(`catalogue.swarm.autonomic.zone`)"
|
|
- "traefik.http.routers.registry-ui.entrypoints=web-secure"
|
|
- "traefik.http.routers.registry-ui.tls.certresolver=production"
|
|
|
|
networks:
|
|
proxy:
|
|
external: true
|
|
|
|
configs:
|
|
config-yml-prod-v1:
|
|
file: config.yml.tmpl
|
|
template_driver: golang
|
|
|
|
volumes:
|
|
registry:
|