Make C4 and Dktk work

This commit is contained in:
root 2022-01-21 09:32:21 +01:00
parent 7357870670
commit 31525571e1
8 changed files with 409 additions and 176 deletions

View File

@ -20,181 +20,136 @@ secrets:
file: ../internal-configuration/proxy.xml file: ../internal-configuration/proxy.xml
services: services:
traefik:
container_name: bridgehead_traefik
image: traefik:2.4
command:
- --api.insecure=true
- --entrypoints.web.address=:80
- --entrypoints.web-secure.address=:443
- --providers.docker=true
environment:
http_proxy: ""
HTTP_PROXY: ""
https_proxy: ""
HTTPS_PROXY: ""
ports:
- 80:80
- 443:443
- 8080:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
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"
connector: connector:
container_name: bridgehead_c4_connector container_name: bridgehead_c4_connector
image: "samply/share-client:c4-7" image: docker.verbis.dkfz.de/ccp/connector:3
environment: environment:
SITE: ${SITE} STORE_URL: http://bridgehead_c4_store:8080
SITEID: ${SITEID} LDM_URL: http://bridgehead_c4_store:8080
CENTRAL_SEARCH: ${CCP_CENTRALSEARCH_URL}
DECENTRAL_SEARCH: ${CCP_DECENTRALSEARCH_URL}
MDR_URL: ${CCP_MDR_URL}
MONITOR_URL: ${CCP_MONITOR_URL}
SHARE_URL: "${PROTOCOL}://${HOST}:${PORT}"
ID_MANAGER_URL: ${ID_MANAGER_URL}
PROJECTPSEUDONYMISATION_URL: ${PROJECTPSEUDONYMISATION_URL}
PATIENTLIST_URL: ${PATIENTLIST_URL}
STORE_URL: ${LDM_URL}
POSTGRES_HOST: ${CONNECTOR_DB_HOST} POSTGRES_HOST: ${CONNECTOR_DB_HOST}
POSTGRES_PORT: ${CONNECTOR_POSTGRES_PORT} POSTGRES_PASSWORD: ${CONNECTOR_POSTGRES_PASS}
POSTGRES_DB: ${CONNECTOR_POSTGRES_DB} NNGM_PASSWORD: ${NNGM_PASSWORD}
POSTGRES_USER: ${CONNECTOR_POSTGRES_USER} NNGM_MAINZELLISTE_APIKEY: ${NNGM_MAINZELLISTE_APIKEY}
POSTGRES_PASS: ${CONNECTOR_POSTGRES_PASS}
HTTP_PROXY: ${HTTP_PROXY_URL}
HTTPS_PROXY: ${HTTP_PROXY_URL}
HTTP_PROXY_USERNAME: ${HTTP_PROXY_USER}
HTTP_PROXY_PASSWORD: ${HTTP_PROXY_PASSWORD}
HTTPS_PROXY_URL: ${HTTPS_PROXY_URL}
HTTPS_PROXY_USERNAME: ${HTTPS_PROXY_USER}
HTTPS_PROXY_PASSWORD: ${HTTPS_PROXY_PASSWORD}
NO_PROXY: ${NO_PROXY}
TZ: Europe/Berlin
volumes: volumes:
- "connector_logs:/usr/local/tomcat/logs" - "connector_logs:/usr/local/tomcat/logs"
labels:
- "traefik.enable=true"
- "traefik.http.routers.c4_connector.rule=PathPrefix(`/c4-connector`)"
- "traefik.http.services.c4_connector.loadbalancer.server.port=8080"
depends_on: depends_on:
- connector_db - connector_db
ports:
- "8080:8080"
restart: always restart: always
networks: env_file:
- "samply" ###TODO: Move into Image
- "connector-db" - internal.env
connector_db: connector_db:
container_name: bridgehead_c4_connector_db container_name: bridgehead_c4_connector_db
image: postgres:10.17 image: postgres:10.17
environment: environment:
POSTGRES_HOST: ${CONNECTOR_DB_HOST} POSTGRES_HOST: ${CONNECTOR_DB_HOST}
POSTGRES_DB: ${CONNECTOR_POSTGRES_DB}
POSTGRES_USER: ${CONNECTOR_POSTGRES_USER}
POSTGRES_PASSWORD: ${CONNECTOR_POSTGRES_PASS} POSTGRES_PASSWORD: ${CONNECTOR_POSTGRES_PASS}
TZ: Europe/Berlin
volumes: volumes:
- "connector_db_data:/var/lib/postgresql/data" - "connector_db_data:/var/lib/postgresql/data"
restart: always restart: always
networks: env_file:
- "connector-db" ###TODO: Move into Image
ports: - internal.env
- "8088:5432"
idmanager: idmanager:
container_name: bridgehead_c4_idmanager container_name: bridgehead_idmanager
image: docker.verbis.dkfz.de/pseudonymisierung/magicpl:0.2.0-RC23 image: docker.verbis.dkfz.de/ccp/idmanager:deploy-c4
environment: environment:
MAGICPL_MAINZELLISTE_URL: ${MAGICPL_MAINZELLISTE_URL} TOMCAT_REVERSEPROXY_FQDN: ${HOST}/id-manager
MAGICPL_MAINZELLISTE_API_KEY: ${MAGICPL_MAINZELLISTE_API_KEY} MAGICPL_MAINZELLISTE_API_KEY: ${MAGICPL_MAINZELLISTE_API_KEY}
MAGICPL_API_KEY: ${MAGICPL_API_KEY} MAGICPL_API_KEY: ${MAGICPL_API_KEY}
MAGICPL_API_KEY_CONNECTOR: ${MAGICPL_API_KEY_CONNECTOR} MAGICPL_API_KEY_CONNECTOR: ${MAGICPL_API_KEY_CONNECTOR}
MAGICPL_PASSPHRASE: ${MAGICPL_PASSPHRASE} MAGICPL_PASSPHRASE: ${MAGICPL_PASSPHRASE}
MAGICPL_MAINZELLISTE_CENTRAL_URL: ${MAGICPL_MAINZELLISTE_CENTRAL_URL}
MAGICPL_MAINZELLISTE_CENTRAL_API_KEY: ${MAGICPL_MAINZELLISTE_CENTRAL_API_KEY} MAGICPL_MAINZELLISTE_CENTRAL_API_KEY: ${MAGICPL_MAINZELLISTE_CENTRAL_API_KEY}
MAGICPL_CENTRAL_URL: ${MAGICPL_CENTRAL_URL}
MAGICPL_CENTRAL_API_KEY: ${MAGICPL_CENTRAL_API_KEY} MAGICPL_CENTRAL_API_KEY: ${MAGICPL_CENTRAL_API_KEY}
MAGICPL_OIDC_PROVIDER: ${MAGICPL_OIDC_PROVIDER}
MAGICPL_OIDC_CLIENT_ID: ${MAGICPL_OIDC_CLIENT_ID} MAGICPL_OIDC_CLIENT_ID: ${MAGICPL_OIDC_CLIENT_ID}
MAGICPL_OIDC_CLIENT_SECRET: ${MAGICPL_OIDC_CLIENT_SECRET} MAGICPL_OIDC_CLIENT_SECRET: ${MAGICPL_OIDC_CLIENT_SECRET}
MAGICPL_SITE: ${SITEID}
MAGICPL_LOG_LEVEL: info
TZ: Europe/Berlin
volumes: volumes:
- "idmanager_logs:/usr/local/tomcat/logs" - "idmanager_logs:/usr/local/tomcat/logs"
secrets: secrets:
- magicpl.docker.xml - magicpl.docker.xml
- dktk_bridgehead_info.docker.xml - dktk_bridgehead_info.docker.xml
- proxy.docker.xml - proxy.docker.xml
depends_on: labels:
- patientlist - "traefik.http.routers.idmanager.rule=PathPrefix(`/id-manager`)"
ports: - "traefik.http.middlewares.idmanager_strip.stripprefix.prefixes=/id-mana\
- "8085:8080" ger"
networks: - "traefik.http.routers.idmanager.middlewares=idmanager_strip"
- "samply" - "traefik.http.services.idmanager.loadbalancer.server.port=8080"
patientlist:
container_name: bridgehead_c4_patientlist
image: medicalinformatics/mainzelliste:develop
environment:
ML_DB_DRIVER: org.postgresql.Driver
ML_DB_TYPE: postgresql
ML_DB_HOST: ${ML_DB_HOST}
ML_DB_PORT: ${ML_DB_PORT}
ML_DB_NAME: ${ML_DB_NAME}
ML_DB_USER: ${ML_DB_USER}
ML_DB_PASS: ${ML_DB_PASS}
ML_API_KEY: ${ML_API_KEY}
ML_LOG_LEVEL: warning
ML_SITE: ${SITEID}
TZ: Europe/Berlin
env_file: env_file:
- ../site-config/patientlist.env ###TODO: Move into Image
volumes: - internal.env
- "patientlist_logs:/usr/local/tomcat/logs"
secrets:
- mainzelliste.docker.conf
- centralSearchPublicKey
depends_on:
- patientlist_db
ports:
- "8086:8080"
networks:
- "samply"
patientlist_db:
container_name: bridgehead_c4_patientlist_db
image: postgres:13.1-alpine
environment:
POSTGRES_DB: ${ML_DB_NAME}
POSTGRES_USER: ${ML_DB_USER}
POSTGRES_PASSWORD: ${ML_DB_PASS}
TZ: Europe/Berlin
volumes:
- "patientlist_db_data:/var/lib/postgresql/data"
networks:
- "samply"
store: store:
container_name: bridgehead_c4_store container_name: bridgehead_c4_store
image: docker.verbis.dkfz.de/ccp/samply.store:release-5.1.2 image: docker.verbis.dkfz.de/ccp/samply.store:release-5.1.2
environment: environment:
MDR_URL: ${CCP_MDR_URL} POSTGRES_HOST: bridgehead_c4_store_db
MDR_NAMESPACE: ${MDR_NAMESPACE} POSTGRES_PORT: 5432
MDR_VALIDATION: ${MDR_VALIDATION} POSTGRES_DB: samplystore
POSTGRES_HOST: ${STORE_POSTGRES_HOST} POSTGRES_USER: samplystore
POSTGRES_PORT: ${STORE_POSTGRES_PORT} POSTGRES_PASSWORD: samplystore
POSTGRES_DB: ${STORE_POSTGRES_DB}
POSTGRES_USER: ${STORE_POSTGRES_USER}
POSTGRES_PASSWORD: ${STORE_POSTGRES_PASS}
TZ: Europe/Berlin TZ: Europe/Berlin
volumes: volumes:
- "store_logs:/usr/local/tomcat/logs" - "store_logs:/usr/local/tomcat/logs"
labels:
- "traefik.enable=true"
- "traefik.http.routers.store_c4.rule=PathPrefix(`/c4-loc\
aldatamanagement`)"
depends_on: depends_on:
- store_db - store_db
ports:
- "8083:8080"
restart: always restart: always
networks: env_file:
- "samply" ###TODO: Move into Image
- internal.env
store_db: store_db:
container_name: bridgehead_c4_store_db container_name: bridgehead_c4_store_db
image: postgres:9.5-alpine image: postgres:9.5-alpine
command: postgres -c datestyle='iso, dmy' command: postgres -c datestyle='iso, dmy'
environment: environment:
POSTGRES_PORT: ${STORE_POSTGRES_PORT} POSTGRES_PORT: 5432
POSTGRES_DB: ${STORE_POSTGRES_DB} POSTGRES_DB: samplystore
POSTGRES_USER: ${STORE_POSTGRES_USER} POSTGRES_USER: samplystore
POSTGRES_PASSWORD: ${STORE_POSTGRES_PASS} POSTGRES_PASSWORD: samplystore
TZ: Europe/Berlin
volumes: volumes:
- "store_db_data:/var/lib/postgresql/data" - "store_db_data:/var/lib/postgresql/data"
restart: always restart: always
networks: env_file:
- "samply" ###TODO: Move into Image
ports: - internal.env
- "8084:5432"
networks:
samply:
driver: "bridge"
connector-db:
driver: "bridge"

View File

@ -1,14 +1,17 @@
SITE=bridgehead_test SITE=bridgehead_test
SITEID=BRIDGEHEAD_TEST SITEID=BRIDGEHEAD_TEST
TOMCAT_REVERSEPROXY_FQDN=${HOST}/c4-connector
DEPLOYMENT_CONTEXT=c4-connector
CONNECTOR_SHARE_URL="http://${HOST}:8080" CONNECTOR_SHARE_URL="http://${HOST}:8080"
CONNECTOR_ENABLE_METRICS=false CONNECTOR_ENABLE_METRICS=false
CONNECTOR_MONITOR_INTERVAL= CONNECTOR_MONITOR_INTERVAL=
CONNECTOR_UPDATE_SERVER= CONNECTOR_UPDATE_SERVER=
CONNECTOR_POSTGRES_PORT=5432 POSTGRES_PORT=5432
CONNECTOR_POSTGRES_DB=samply.connector POSTGRES_DB=samply.connector
CONNECTOR_POSTGRES_USER=samply.connector POSTGRES_USER=samply.connector
HTTP_PROXY_HOST=${PROXY_URL} HTTP_PROXY_HOST=${PROXY_URL}
HTTP_PROXY_USER= HTTP_PROXY_USER=
@ -22,9 +25,12 @@ http_proxy=${PROXY_URL}
https_proxy=${PROXY_URL} https_proxy=${PROXY_URL}
CCP_CENTRALSEARCH_URL=https://centralsearch-test.dktk.dkfz.de/ CCP_CENTRALSEARCH_URL=https://centralsearch-test.dktk.dkfz.de/
CENTRAL_SEARCH=https://centralsearch-test.dktk.dkfz.de/
CCP_DECENTRALSEARCH_URL=https://decentralsearch-test.ccp-it.dktk.dkfz.de/ CCP_DECENTRALSEARCH_URL=https://decentralsearch-test.ccp-it.dktk.dkfz.de/
DECENTRAL_SEARCH=https://decentralsearch-test.ccp-it.dktk.dkfz.de/
CCP_MDR_URL=https://mdr.ccp-it.dktk.dkfz.de/v3/api/mdr CCP_MDR_URL=https://mdr.ccp-it.dktk.dkfz.de/v3/api/mdr
MDR_URL=https://mdr.ccp-it.dktk.dkfz.de/v3/api/mdr
CCP_MONITOR_URL= CCP_MONITOR_URL=
MONITOR_OPTOUT= MONITOR_OPTOUT=
@ -44,4 +50,8 @@ ML_DB_USER=mainzelliste
CENTRAL_CONTROL_NUMBER_GENERATPR_URL=http://e260-serv-03/central/api CENTRAL_CONTROL_NUMBER_GENERATPR_URL=http://e260-serv-03/central/api
GLOBAL_ID=DKTK GLOBAL_ID=DKTK
MAINZELLISTE_URL=https://patientlist-test.ccpit.dktk.dkfz.de/mainzelliste MAINZELLISTE_URL=https://patientlist-test.ccpit.dktk.dkfz.de/mainzelliste
NNGM_URL=https://test.anforderung.nngm.de/trial/nNGMv09/import-fb
NNGM_PROFILE=http://uk-koeln.de/fhir/StructureDefinition/Patient/nNGM/pseudonymisiert
NNGM_MAINZELLISTE_URL=https://test.verbis.dkfz.de/mpl

View File

@ -20,6 +20,36 @@ secrets:
file: ../internal-configuration/proxy.xml file: ../internal-configuration/proxy.xml
services: services:
traefik:
container_name: bridgehead_traefik
image: traefik:2.4
command:
- --api.insecure=true
- --entrypoints.web.address=:80
- --entrypoints.web-secure.address=:443
- --providers.docker=true
environment:
http_proxy: ""
HTTP_PROXY: ""
https_proxy: ""
HTTPS_PROXY: ""
ports:
- 80:80
- 443:443
- 8080:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
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"
connector: connector:
container_name: bridgehead_dktk_connector container_name: bridgehead_dktk_connector
image: "samply/share-client:dktk-7" image: "samply/share-client:dktk-7"
@ -31,15 +61,14 @@ services:
- "connector_logs:/usr/local/tomcat/logs" - "connector_logs:/usr/local/tomcat/logs"
depends_on: depends_on:
- connector_db - connector_db
ports:
- "8080:8080"
restart: always restart: always
labels:
- "traefik.enable=true"
- "traefik.http.routers.dktk_connector.rule=PathPrefix(`/dktk-connector`)"
- "traefik.http.services.dktk_connector.loadbalancer.server.port=8080"
env_file: env_file:
###TODO: Move into Image ###TODO: Move into Image
- internal.env - internal.env
networks:
- "samply"
- "connector-db"
connector_db: connector_db:
container_name: bridgehead_dktk_connector_db container_name: bridgehead_dktk_connector_db
@ -53,27 +82,20 @@ services:
env_file: env_file:
###TODO: Move into Image ###TODO: Move into Image
- internal.env - internal.env
networks:
- "connector-db"
idmanager: idmanager:
container_name: bridgehead_dktk_idmanager container_name: bridgehead_id-manager
image: docker.verbis.dkfz.de/pseudonymisierung/magicpl:release-0.2.0 image: docker.verbis.dkfz.de/pseudonymisierung/magicpl:release-0.2.0
environment: environment:
MAGICPL_MAINZELLISTE_URL: ${MAGICPL_MAINZELLISTE_URL} TOMCAT_REVERSEPROXY_FQDN: ${HOST}/id-manager
MAGICPL_MAINZELLISTE_API_KEY: ${MAGICPL_MAINZELLISTE_API_KEY} MAGICPL_MAINZELLISTE_API_KEY: ${MAGICPL_MAINZELLISTE_API_KEY}
MAGICPL_API_KEY: ${MAGICPL_API_KEY} MAGICPL_API_KEY: ${MAGICPL_API_KEY}
MAGICPL_API_KEY_CONNECTOR: ${MAGICPL_API_KEY_CONNECTOR} MAGICPL_API_KEY_CONNECTOR: ${MAGICPL_API_KEY_CONNECTOR}
MAGICPL_PASSPHRASE: ${MAGICPL_PASSPHRASE} MAGICPL_PASSPHRASE: ${MAGICPL_PASSPHRASE}
MAGICPL_MAINZELLISTE_CENTRAL_URL: ${MAGICPL_MAINZELLISTE_CENTRAL_URL}
MAGICPL_MAINZELLISTE_CENTRAL_API_KEY: ${MAGICPL_MAINZELLISTE_CENTRAL_API_KEY} MAGICPL_MAINZELLISTE_CENTRAL_API_KEY: ${MAGICPL_MAINZELLISTE_CENTRAL_API_KEY}
MAGICPL_CENTRAL_URL: ${MAGICPL_CENTRAL_URL}
MAGICPL_CENTRAL_API_KEY: ${MAGICPL_CENTRAL_API_KEY} MAGICPL_CENTRAL_API_KEY: ${MAGICPL_CENTRAL_API_KEY}
MAGICPL_OIDC_PROVIDER: ${MAGICPL_OIDC_PROVIDER}
MAGICPL_OIDC_CLIENT_ID: ${MAGICPL_OIDC_CLIENT_ID} MAGICPL_OIDC_CLIENT_ID: ${MAGICPL_OIDC_CLIENT_ID}
MAGICPL_OIDC_CLIENT_SECRET: ${MAGICPL_OIDC_CLIENT_SECRET} MAGICPL_OIDC_CLIENT_SECRET: ${MAGICPL_OIDC_CLIENT_SECRET}
TZ: Europe/Berlin TZ: Europe/Berlin
volumes: volumes:
- "idmanager_logs:/usr/local/tomcat/logs" - "idmanager_logs:/usr/local/tomcat/logs"
@ -83,21 +105,23 @@ services:
- proxy.docker.xml - proxy.docker.xml
depends_on: depends_on:
- patientlist - patientlist
labels:
- "traefik.http.routers.idmanager.rule=PathPrefix(`/id-manager`)"
- "traefik.http.middlewares.idmanager_strip.stripprefix.prefixes=/id-mana\
ger"
- "traefik.http.routers.idmanager.middlewares=idmanager_strip"
- "traefik.http.services.idmanager.loadbalancer.server.port=8080"
env_file: env_file:
###TODO: Move into Image ###TODO: Move into Image
- internal.env - internal.env
ports:
- "8085:8080"
networks:
- "samply"
patientlist: patientlist:
container_name: bridgehead_dktk_patientlist container_name: bridgehead_patientlist
image: medicalinformatics/mainzelliste:develop image: medicalinformatics/mainzelliste:develop
environment: environment:
ML_DB_HOST: bridgehead_dktk_patientlist_db
ML_DB_PASS: ${ML_DB_PASS} ML_DB_PASS: ${ML_DB_PASS}
ML_API_KEY: ${ML_API_KEY} ML_API_KEY: ${ML_API_KEY}
TOMCAT_REVERSEPROXY_FQDN: ${HOST}/patientlist
env_file: env_file:
- ../site-config/patientlist.env - ../site-config/patientlist.env
- internal.env - internal.env
@ -106,12 +130,14 @@ services:
secrets: secrets:
- mainzelliste.docker.conf - mainzelliste.docker.conf
- centralSearchPublicKey - centralSearchPublicKey
labels:
- "traefik.http.routers.patientlist.rule=PathPrefix(`/patientlist`)"
- "traefik.http.middlewares.patientlist_strip.stripprefix.prefixes=/patie\
ntlist"
- "traefik.http.routers.patientlist.middlewares=patientlist_strip"
- "traefik.http.services.patientlist.loadbalancer.server.port=8080"
depends_on: depends_on:
- patientlist_db - patientlist_db
ports:
- "8086:8080"
networks:
- "samply"
patientlist_db: patientlist_db:
container_name: bridgehead_dktk_patientlist_db container_name: bridgehead_dktk_patientlist_db
@ -122,12 +148,4 @@ services:
- "patientlist_db_data:/var/lib/postgresql/data" - "patientlist_db_data:/var/lib/postgresql/data"
env_file: env_file:
###TODO: Move into Image ###TODO: Move into Image
- internal.env - internal.env
networks:
- "samply"
networks:
samply:
driver: "bridge"
connector-db:
driver: "bridge"

View File

@ -6,6 +6,9 @@ CONNECTOR_ENABLE_METRICS=false
CONNECTOR_MONITOR_INTERVAL= CONNECTOR_MONITOR_INTERVAL=
CONNECTOR_UPDATE_SERVER= CONNECTOR_UPDATE_SERVER=
TOMCAT_REVERSEPROXY_FQDN=${HOST}/dktk-connector
DEPLOYMENT_CONTEXT=dktk-connector
POSTGRES_PORT=5432 POSTGRES_PORT=5432
POSTGRES_DB=samply.connector POSTGRES_DB=samply.connector
POSTGRES_USER=samply.connector POSTGRES_USER=samply.connector
@ -38,6 +41,7 @@ MDR_NAMESPACE=adt,dktk,marker
#MDR_MAP= #MDR_MAP=
MDR_VALIDATION=false MDR_VALIDATION=false
ML_DB_HOST=bridgehead_dktk_patientlist_db
ML_DB_NAME=samply.connector ML_DB_NAME=samply.connector
ML_DB_PORT=5432 ML_DB_PORT=5432
ML_DB_USER=samply.connector ML_DB_USER=samply.connector
@ -53,4 +57,7 @@ ML_SITE=BRIDGEHEAD_DKTK_TEST
TZ=Europe/Berlin TZ=Europe/Berlin
MAGICPL_SITE=adt MAGICPL_SITE=adt
MAGICPL_LOG_LEVEL=info MAGICPL_LOG_LEVEL=info
MAGICPL_MAINZELLISTE_CENTRAL_URL=http://e260-serv-03/central/mainzelliste
MAGICPL_CENTRAL_URL=http://e260-serv-03/central/api
MAGICPL_OIDC_PROVIDER=https://auth-test.ccp-it.dktk.dkfz.de

View File

@ -1,9 +1,4 @@
version: '3.4' version: '3.4'
networks:
samply:
driver: "bridge"
connector-db:
driver: "bridge"
volumes: volumes:
store-db-data: store-db-data:
@ -12,18 +7,52 @@ volumes:
name: "connector-db-data" name: "connector-db-data"
services: services:
traefik:
container_name: bridgehead_traefik
image: traefik:2.4
command:
- --api.insecure=true
- --entrypoints.web.address=:80
- --entrypoints.web-secure.address=:443
- --providers.docker=true
environment:
http_proxy: ""
HTTP_PROXY: ""
https_proxy: ""
HTTPS_PROXY: ""
ports:
- 80:80
- 443:443
- 8080:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
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"
store: store:
container_name: "bridgehead_gbn_blaze_store" container_name: "bridgehead_gbn_blaze_store"
image: "samply/blaze:0.15" image: "samply/blaze:0.15"
environment: environment:
BASE_URL: "http://bridgehead_gbn_blaze_store:8080" BASE_URL: "http://bridgehead_gbn_blaze_store:8080"
JAVA_TOOL_OPTIONS: "-Xmx4g" JAVA_TOOL_OPTIONS: "-Xmx4g"
networks:
- "samply"
volumes: volumes:
- "store-db-data:/app/data" - "store-db-data:/app/data"
ports: labels:
- "8080:8080" - "traefik.enable=true"
- "traefik.http.middlewares.test-auth.basicauth.users=user:$$apr1$$RjhTX8\
ji$$3ToBWBch1K4RBnvp86TuH/"
- "traefik.http.routers.blaze_gbn.rule=PathPrefix(`/gbn-localdatamanagement`)"
- "traefik.http.middlewares.gbn_b_strip.stripprefix.prefixes=/gbn-localdatamanagement"
- "traefik.http.services.blaze_gbn.loadbalancer.server.port=8080"
- "traefik.http.routers.blaze_gbn.middlewares=gbn_b_strip,test-auth"
restart: "always" restart: "always"
connector: connector:
@ -37,11 +66,10 @@ services:
env_file: env_file:
###TODO: Move into Image ###TODO: Move into Image
- internal.env - internal.env
networks: labels:
- "samply" - "traefik.enable=true"
- "connector-db" - "traefik.http.routers.gbn_connector.rule=PathPrefix(`/gbn-connector`)"
ports: - "traefik.http.services.gbn_connector.loadbalancer.server.port=8080"
- "8082:8080"
depends_on: depends_on:
- "connector-db" - "connector-db"
restart: "always" restart: "always"
@ -52,8 +80,6 @@ services:
environment: environment:
POSTGRES_PASSWORD: ${CONNECTOR_POSTGRES_PASS} POSTGRES_PASSWORD: ${CONNECTOR_POSTGRES_PASS}
POSTGRES_PORT: 5432 POSTGRES_PORT: 5432
networks:
- "connector-db"
volumes: volumes:
- "connector-db-data:/var/lib/postgresql/data" - "connector-db-data:/var/lib/postgresql/data"
restart: "always" restart: "always"

View File

@ -5,6 +5,8 @@ CONNECTOR_SHARE_URL="http://${HOST}:8080"
MDR_URL="https://mdr.germanbiobanknode.de/v3/api/mdr" MDR_URL="https://mdr.germanbiobanknode.de/v3/api/mdr"
MONITOR_URL=https://ccpit.dktk.dkfz.de/dktk.monitor/rest/info MONITOR_URL=https://ccpit.dktk.dkfz.de/dktk.monitor/rest/info
no_proxy=bridgehead_gbn_connector,bridgehead_gbn_blaze_store,bridgehead_gbn_connector_db no_proxy=bridgehead_gbn_connector,bridgehead_gbn_blaze_store,bridgehead_gbn_connector_db
TOMCAT_REVERSEPROXY_FQDN=${HOST}/gbn-connector
DEPLOYMENT_CONTEXT=gbn-connector
CONNECTOR_MONITOR_INTERVAL= CONNECTOR_MONITOR_INTERVAL=
CONNECTOR_UPDATE_SERVER= CONNECTOR_UPDATE_SERVER=
feature_BBMRI_DIRECTORY_SYNC=false feature_BBMRI_DIRECTORY_SYNC=false

216
landing/index.html Normal file
View File

@ -0,0 +1,216 @@
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<title>Bridgehead Overview</title>
<!-- Bootstrap core CSS -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"
integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p"
crossorigin="anonymous"></script>
</head>
<body>
<div class="alert alert-danger" role="alert">
For updating the Bridgehead your action is requiered. This message is shown when the update of one of your
componentes need action to complete. This is a breaking change.
</div>
<div class="alert alert-warning">
There is a componente update for your bridgehead. Please run the updater
</div>
<div class="alert alert-success">
Your Bridgehead was updated!
</div>
<div class="container px-4 py-5" id="featured-3">
<h2 class="pb-2 border-bottom">Bridgehead</h2>
<div class="accordion" id="accordionExample">
<div class="accordion-item">
<h2 class="accordion-header" id="headingOne">
<button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#collapseOne"
aria-expanded="true" aria-controls="collapseOne">
Projects
</button>
</h2>
<div id="collapseOne" class="accordion-collapse collapse show" aria-labelledby="headingOne"
data-bs-parent="#accordionExample">
<div class="accordion-body">
<div class="row g-4 py-5 row-cols-1 row-cols-lg-3">
<div class="feature col">
<div class="feature-icon">
<img src="GBN_CMYK_schwarz.svg" class="img-fluid img-thumbnail">
</div>
<h4>GBA/GBN</h4>
<p>GBN bringt Biobanken und Forscher*innen zusammen, damit Erkenntnisse über die Erkrankung gewonnen und
Therapien entwickelt werden können.</p>
</div>
<div class="feature col">
<div class="feature-icon">
<img src="Logo_DKTK_neu_.jpg" class="img-fluid img-thumbnail">
</div>
<h4>CCP-IT</h4>
<p>Das Deutsche Konsortium für Translationale Krebsforschung ist eine Initiative der Bundesregierung zur
Förderung der medizinische Krebsforschung.</p>
</div>
<div class="feature col">
<div class="feature-icon">
<img
src="https://www.nngm.de/wp-content/themes/nNGM/assets/images/new_icons/logo-nngm-nationales-netzwerk-genomische-medizin-lungenkrebs.svg"
class="img-fluid img-thumbnail">
</div>
<h4>Nationales Netzwerk Genomische Medizin (nNGM)</h4>
<p>Über ein bundesweites Netzwerk sollen in Deutschland künftig alle Patienten mit fortgeschrittenem
Lungenkrebs Zugang zu molekularer Diagnostik und innovativen Therapien erhalten. Dafür schließen sich
20 Netzwerkzentren im „nationalen Netzwerk Genomische Medizin (nNGM) Lungenkrebs“ zusammen darunter
alle 13 onkologischen Spitzenzentren, die aktuell von der Deutschen Krebshilfe gefördert werden. </p>
</div>
</div>
</div>
</div>
</div>
</div>
<div>
<h2>Components</h2>
<h3>Central</h3>
<table class="table">
<thead>
<tr>
<th>Group</th>
<th>Service</th>
<th>Status</th>
</tr>
</thead>
<tbody>
<tr>
<td>CCP-IT</td>
<td><a href="patientlist.ccp-it.dktk.dkfz.de">Zentrale Patientenliste</td>
<td>&check;</td>
</tr>
<tr>
<td>CCP-IT</td>
<td><a href="decentralsearch.ccp-it.dktk.dkfz.de">Dezentrale Suche</td>
<td>&check;</td>
</tr>
<tr>
<td>CCP-IT</td>
<td><a href="centralsearch.ccp-it.dktk.dkfz.de">Zentrale Suche</td>
<td>&check;</td>
</tr>
<tr>
<td>CCP-IT</td>
<td><a href="deployment.ccp-it.dktk.dkfz.de">Deployment-Server</td>
<td>&check;</td>
</tr>
<tr>
<td>CCP-IT</td>
<td><a href="dktk-kne.kgu.de">Zentraler Kontrollnummernerzeuger</td>
<td>&check;</td>
</tr>
<tr>
<td>GBA</td>
<td><a href="https://samplelocator.bbmri.de/icd10">GBA-ICD10</td>
<td>&check;</td>
</tr>
<tr>
<td>GBA</td>
<td><a href="auth.dev.germanbiobanknode.de">GBA-Auth</td>
<td>&check;</td>
</tr>
<tr>
<td>GBA</td>
<td><a href="mdr.germanbiobanknode.de">GBA-MDR</td>
<td>&check;</td>
</tr>
<tr>
<td>GBA</td>
<td><a href="samplelocator.bbmri.de">GBA-Suchbroker</td>
<td>&check;</td>
</tr>
</tbody>
</table>
</div>
<div>
<h3>Local</h3>
<table class="table">
<thead>
<tr>
<th>Project</th>
<th>Services</th>
<th>Status</th>
</tr>
</thead>
<tbody>
<tr>
<td>Monitoring Proxy</td>
<td><a href="http://e260-serv-05:8080/">Traefik</a></td>
<td>&check;</td>
</tr>
<tr>
<td>Monitoring Resources</td>
<td><a href="http://e260-serv-05:8080/grafana">Granfana</a></td>
<td>&check;</td>
</tr>
<tr>
<td>GBA</td>
<td><a href="http://e260-serv-05/gbn-connector/">Connector</a></td>
<td>&check;</td>
</tr>
<tr>
<td>GBA</td>
<td><a href="http://e260-serv-05/gbn-localdatamanagement/fhir">LDM: Blaze</a></td>
<td>&check;</td>
</tr>
<tr>
<td>DKTK</td>
<td><a href="http://e260-serv-05/dktk-connector/">Connector</a></td>
<td>&check;</td>
</tr>
<tr>
<td>DKTK</td>
<td><a href="">CentraXX</a></td>
<td>&check;</td>
</tr>
<tr>
<td>Idmanagement</td>
<td><a href="http://e260-serv-05/ID-Manager/">ID-Manager</a></td>
<td>&check;</td>
</tr>
<tr>
<td>Idmanagement</td>
<td><a href="http://e260-serv-05/Patientenlist/">Patientenliste</a></td>
<td>&check;</td>
</tr>
<tr>
<td>C4</td>
<td><a href="http://e260-serv-05/c4-connector/">Connector</a></td>
<td>&check;</td>
</tr>
<tr>
<td>C4</td>
<td><a href="http://e260-serv-05/c4-localdatamanagement/">LDM: Samply Store</a></td>
<td>&check;</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>

View File

@ -6,4 +6,3 @@ source site.conf
log "Stopping bridgehead" log "Stopping bridgehead"
docker-compose -f ${project}/docker-compose.yml --env-file site-config/${project}.env down docker-compose -f ${project}/docker-compose.yml --env-file site-config/${project}.env down