bridgehead/dktk-fed/docker-compose.yml

140 lines
4.8 KiB
YAML

version: "3.7"
services:
### Does not need proxy settings
traefik:
container_name: bridgehead-traefik
image: traefik:2.4
command:
- --api.insecure=true
- --entrypoints.web.address=:80
- --entrypoints.websecure.address=:443
- --providers.docker=true
- --providers.file.directory=/configuration/
- --entrypoints.web.http.redirections.entrypoint.to=websecure
- --entrypoints.web.http.redirections.entrypoint.scheme=https
- --providers.file.watch=true
ports:
- 80:80
- 443:443
- 8080:8080
volumes:
- ../certs:/tools/certs
- ../tools/traefik/:/configuration/
- /var/run/docker.sock:/var/run/docker.sock:ro
- ../auth/:/auth
extra_hosts:
- "host.docker.internal:host-gateway"
### Does need to know the outside proxy to connect central components
forward_proxy:
container_name: bridgehead-squid
image: ubuntu/squid
environment:
http_proxy: ${http_proxy}
https_proxy: ${https_proxy}
volumes:
- "bridgehead-proxy:/var/log/squid"
## Needs internal proxy config
landing:
container_name: bridgehead-landingpage
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"
- "traefik.http.routers.landing.tls=true"
## Needs internal proxy config
blaze:
image: "samply/blaze:0.16"
container_name: bridgehead-dktk-blaze
environment:
BASE_URL: "http://blaze:8080"
JAVA_TOOL_OPTIONS: "-Xmx4g"
LOG_LEVEL: "debug"
ENFORCE_REFERENTIAL_INTEGRITY: "false"
volumes:
- "blaze-data:/app/data"
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.test-auth.basicauth.usersfile=/auth/dktk"
- "traefik.http.routers.blaze_dktk.rule=PathPrefix(`/dktk-localdatamanagement`)"
- "traefik.http.middlewares.dktk_b_strip.stripprefix.prefixes=/dktk-localdatamanagement"
- "traefik.http.services.blaze_dktk.loadbalancer.server.port=8080"
- "traefik.http.routers.blaze_dktk.middlewares=dktk_b_strip,test-auth"
- "traefik.http.routers.blaze_dktk.tls=true"
dktk-connector:
image: "samply/share-client:gbn-feature-environmentPreconfiguration"
environment:
POSTGRES_HOST: "dktk-connector-db"
POSTGRES_PASSWORD: "123"
STORE_URL: "http://bridgehead-blaze:8080/fhir"
MDR_URL: "https://mdr.ccp-it.dktk.dkfz.de/v3/api/mdr"
DEPLOYMENT_CONTEXT: "dktk-connector"
volumes:
- "dktk-connector-logs:/usr/local/tomcat/logs"
labels:
- "traefik.enable=true"
- "traefik.http.routers.dktk_connector.rule=PathPrefix(`/dktk-connector`)"
- "traefik.http.services.dktk_connector.loadbalancer.server.port=8080"
- "traefik.http.routers.landing.tls=true"
depends_on:
- "dktk-connector-db"
- "forward_proxy"
restart: "always"
dktk-connector-db:
image: "postgres:10.17"
environment:
POSTGRES_DB: "samply.connector"
POSTGRES_USER: "samply"
POSTGRES_PASSWORD: "123"
volumes:
- "dktk-connector-db-data:/var/lib/postgresql/data"
restart: "always"
# dktk-fed-search-share:
# image: "ghcr.io/samply/dktk-fed-search-share:pr-1"
# container_name: bridgehead_dktk_share
# environment:
# APP_BASE_URL: "http://dktk-fed-search-share:8080"
# APP_STORE_URL: "http://blaze:8080/fhir"
# APP_BROKER_BASEURL: "http://e260-serv-11.inet.dkfz-heidelberg.de:8080/broker/rest/searchbroker"
# APP_BROKER_MAIL: "foo@bar.de"
# APP_STORE_BASEURL: "http://bridgehead_dktk_blaze:8080/fhir"
# SPRING_DATASOURCE_URL: "jdbc:postgresql://dktk-fed-search-share-db:5432/dktk-fed-search-share"
# JAVA_TOOL_OPTIONS: "-Xmx1g"
# http_proxy: "http://www-int2.inet.dkfz-heidelberg.de:3128"
# https_proxy: "http://www-int2.inet.dkfz-heidelberg.de:3128"
# HTTP_PROXY: "http://www-int2.inet.dkfz-heidelberg.de:3128"
# HTTPS_PROXY: "http://www-int2.inet.dkfz-heidelberg.de:3128"
# depends_on:
# - dktk-fed-search-share-db
# - blaze
# labels:
# - "traefik.enable=true"
# - "traefik.http.routers.dktk-fed-search.rule=PathPrefix(`/dktk-connector`)"
# - "traefik.http.services.dktk-fed-search.loadbalancer.server.port=8080"
# dktk-fed-search-share-db:
# image: "postgres:14"
# environment:
# POSTGRES_USER: "dktk-fed-search-share"
# POSTGRES_PASSWORD: "dktk-fed-search-share"
# POSTGRES_DB: "dktk-fed-search-share"
# volumes:
# - "dktk-fed-search-share-db-data:/var/lib/postgresql/data"
volumes:
blaze-data:
dktk-connector-logs:
dktk-connector-db-data:
# dktk-fed-search-share-db-data: