Files
oc-datacenter/docker-compose.yml
T

46 lines
1.7 KiB
YAML

version: '3.4'
services:
oc-datacenter:
env_file:
- path: ./env.env
required: false
environment:
- MONGO_DATABASE=DC_myDC
# Chemin du fichier JSON persistant contenant la table opaque_key → real_path.
# Doit pointer vers le volume monté ci-dessous pour survivre aux redémarrages.
- SOURCE_KEY_STORE_PATH=/data/source-keys.json
image: 'oc-datacenter:latest'
ports:
- 8092:8080
volumes:
# Table privée opaque_key → real_path (ne jamais effacer ce volume).
# Même exigence de conservation que la base de données.
- oc-source-keys:/data
labels:
- "traefik.enable=true"
- "traefik.http.routers.datacenter.entrypoints=web"
- "traefik.http.routers.datacenter.rule=PathPrefix(`/datacenter`)"
- "traefik.http.services.datacenter.loadbalancer.server.port=8080"
- "traefik.http.middlewares.datacenter-rewrite.replacepathregex.regex=^/datacenter(.*)"
- "traefik.http.middlewares.datacenter-rewrite.replacepathregex.replacement=/oc$$1"
- "traefik.http.routers.datacenter.middlewares=datacenter-rewrite,auth-datacenter"
- "traefik.http.middlewares.auth-datacenter.forwardauth.address=http://oc-auth:8080/oc/forward"
- "traefik.http.middlewares.auth-datacenter.forwardauth.trustForwardHeader=true"
- "traefik.http.middlewares.auth-datacenter.forwardauth.authResponseHeaders=X-Auth-Request-User,X-Auth-Request-Email"
container_name: oc-datacenter
networks:
- oc
volumes:
# Volume créé et écrit par oc-catalog, monté ici en lecture.
# Démarrer oc-catalog avant oc-datacenter pour que le volume existe.
oc-source-keys:
external: true
networks:
oc:
external: true