bridgehead/dktk/docker-compose.yml

129 lines
4.2 KiB
YAML
Raw Normal View History

version: "3.7"
volumes:
connector_db_data:
connector_logs:
patientlist_db_data:
patientlist_logs:
idmanager_logs:
store_db_data:
store_logs:
services:
2022-01-21 09:32:21 +01:00
traefik:
container_name: traefik
2022-01-21 09:32:21 +01:00
image: traefik:2.4
command:
- --api.insecure=true
- --entrypoints.web.address=:80
- --entrypoints.web-secure.address=:443
- --providers.docker=true
ports:
- 80:80
- 443:443
- 8080:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
landing:
container_name: landingpage
2022-01-21 09:32:21 +01:00
image: nginx:stable
volumes:
- ../landing/:/usr/share/nginx/html
labels:
- "traefik.enable=true"
- "traefik.http.routers.landing.rule=PathPrefix(`/`)"
- "traefik.http.services.landing.loadbalancer.server.port=80"
connector:
image: "samply/share-client:dktk-feature-environmentPreconfigurationTorben"
environment:
ID_MANAGER_APIKEY: ${MAGICPL_API_KEY_CONNECTOR}
POSTGRES_PASSWORD: ${CONNECTOR_POSTGRES_PASS}
HTTP_PROXY_USER: ${HTTP_PROXY_USER}
HTTP_PROXY_PASSWORD: ${HTTP_PROXY_PASSWORD}
HTTPS_PROXY_USER: ${HTTPS_PROXY_USER}
HTTPS_PROXY_PASSWORD: ${HTTPS_PROXY_PASSWORD}
env_file:
- ../site-config/dktk.env
# Necessary for the connector to successful check the status of other components on the same host
extra_hosts:
- "host.docker.internal:host-gateway"
- "${HOST}:${HOSTIP}"
volumes:
- "connector_logs:/usr/local/tomcat/logs"
depends_on:
- connector-db
restart: always
2022-01-21 09:32:21 +01:00
labels:
- "traefik.enable=true"
- "traefik.http.routers.dktk_connector.rule=PathPrefix(`/dktk-connector`)"
- "traefik.http.services.dktk_connector.loadbalancer.server.port=8080"
connector-db:
image: postgres:10.17
environment:
POSTGRES_DB: "share_v2"
POSTGRES_USER: "samplyweb"
POSTGRES_PASSWORD: ${CONNECTOR_POSTGRES_PASS}
volumes:
- "connector_db_data:/var/lib/postgresql/data"
restart: always
id-manager:
container_name: id-manager
image: docker.verbis.dkfz.de/ccp/idmanager:bridgehead-develop
environment:
MAGICPL_SITE: ${SITE}
MAGICPL_MAINZELLISTE_API_KEY: ${MAGICPL_MAINZELLISTE_API_KEY}
MAGICPL_API_KEY: ${MAGICPL_API_KEY}
MAGICPL_API_KEY_CONNECTOR: ${MAGICPL_API_KEY_CONNECTOR}
MAGICPL_MAINZELLISTE_CENTRAL_API_KEY: ${MAGICPL_MAINZELLISTE_CENTRAL_API_KEY}
MAGICPL_CENTRAL_API_KEY: ${MAGICPL_CENTRAL_API_KEY}
MAGICPL_OIDC_CLIENT_ID: ${MAGICPL_OIDC_CLIENT_ID}
MAGICPL_OIDC_CLIENT_SECRET: ${MAGICPL_OIDC_CLIENT_SECRET}
TOMCAT_REVERSEPROXY_FQDN: "${PROTOCOL}://${HOST}:${PORT}"
HTTP_PROXY_USER: ${HTTP_PROXY_USER}
HTTP_PROXY_PASSWORD: ${HTTP_PROXY_PASSWORD}
HTTPS_PROXY_USER: ${HTTPS_PROXY_USER}
HTTPS_PROXY_PASSWORD: ${HTTPS_PROXY_PASSWORD}
env_file:
- ../site-config/dktk.env
volumes:
- "idmanager_logs:/usr/local/tomcat/logs"
depends_on:
- patientlist
2022-01-21 09:32:21 +01:00
labels:
- "traefik.http.routers.id-manager.rule=PathPrefix(`/ID-Manager`)"
- "traefik.http.services.id-manager.loadbalancer.server.port=8080"
patientlist:
container_name: patientlist
image: docker.verbis.dkfz.de/ccp/patientlist:bridgehead-develop
environment:
ML_SITE: ${SITE}
ML_API_KEY: ${MAGICPL_MAINZELLISTE_API_KEY}
ML_DB_PASS: ${ML_DB_PASS}
TOMCAT_REVERSEPROXY_FQDN: "${PROTOCOL}://${HOST}:${PORT}"
env_file:
- ../site-config/dktk.env
# TODO: Implement automatic seed generation in mainzelliste
- ../site-config/patientlist.env
volumes:
- "patientlist_logs:/usr/local/tomcat/logs"
2022-01-21 09:32:21 +01:00
labels:
- "traefik.http.routers.patientlist.rule=PathPrefix(`/Patientlist`)"
2022-01-21 09:32:21 +01:00
- "traefik.http.services.patientlist.loadbalancer.server.port=8080"
depends_on:
- patientlist-db
patientlist-db:
container_name: patientlist-db
image: postgres:13.1-alpine
environment:
POSTGRES_DB: mainzelliste
POSTGRES_USER: mainzelliste
POSTGRES_PASSWORD: ${ML_DB_PASS}
TZ: "Europe/Berlin"
volumes:
- "patientlist_db_data:/var/lib/postgresql/data"