Set SELinux labels for bind mounts, replace secrets with bind mounts

This commit is contained in:
tobiaskussel
2025-07-03 14:09:01 +00:00
parent 98e0512a61
commit 078c16e8dd
22 changed files with 62 additions and 86 deletions

View File

@ -35,10 +35,10 @@ services:
BEAM_SECRET: ${TOKEN_MANAGER_SECRET}
BEAM_DATASHIELD_PROXY: request-manager
volumes:
- "/var/cache/bridgehead/ccp/opal-metadata-db:/srv" # Opal metadata
secrets:
- opal-cert.pem
- opal-key.pem
- "/var/cache/bridgehead/ccp/opal-metadata-db:/srv:Z" # Opal metadata
# secrets don't seem to allow us to specify Z/z
- /tmp/bridgehead/opal-cert.pem:/run/secrets/opal-cert.pem:z
- /tmp/bridgehead/opal-key.pem:/run/secrets/opal-key.pem:Z
opal-db:
container_name: bridgehead-opal-db
@ -48,7 +48,7 @@ services:
POSTGRES_USER: "opal"
POSTGRES_DB: "opal"
volumes:
- "/var/cache/bridgehead/ccp/opal-db:/var/lib/postgresql/data" # Opal project data (imported from exporter)
- "/var/cache/bridgehead/ccp/opal-db:/var/lib/postgresql/data:Z" # Opal project data (imported from exporter)
opal-rserver:
container_name: bridgehead-opal-rserver
@ -67,20 +67,14 @@ services:
DISCOVERY_URL: "./map/central.json"
LOCAL_TARGETS_FILE: "./map/local.json"
NO_AUTH: "true"
secrets:
- opal-cert.pem
depends_on:
- beam-proxy
volumes:
- /tmp/bridgehead/opal-map/:/map/:ro
- /tmp/bridgehead/opal-map/:/map/:ro,Z
# secrets don't seem to allow us to specify Z/z
- /tmp/bridgehead/opal-cert.pem:/run/secrets/opal-cert.pem:z
beam-proxy:
environment:
APP_datashield-connect_KEY: ${DATASHIELD_CONNECT_SECRET}
APP_token-manager_KEY: ${TOKEN_MANAGER_SECRET}
secrets:
opal-cert.pem:
file: /tmp/bridgehead/opal-cert.pem
opal-key.pem:
file: /tmp/bridgehead/opal-key.pem

View File

@ -25,7 +25,7 @@ services:
volumes:
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro
- /etc/bridgehead/dnpm/local_targets.json:/conf/connect_targets.json:ro
- /srv/docker/bridgehead/minimal/modules/dnpm-central-targets.json:/conf/central_targets.json:ro
- /srv/docker/bridgehead/minimal/modules/dnpm-central-targets.json:/conf/central_targets.json:ro,Z
labels:
- "traefik.enable=true"
- "traefik.http.routers.dnpm-connect.rule=PathPrefix(`/dnpm-connect`)"

View File

@ -12,13 +12,13 @@ services:
MYSQL_ROOT_HOST: "%"
MYSQL_ROOT_PASSWORD: ${DNPM_MYSQL_ROOT_PASSWORD}
volumes:
- /var/cache/bridgehead/dnpm/mysql:/var/lib/mysql
- /var/cache/bridgehead/dnpm/mysql:/var/lib/mysql:Z
dnpm-authup:
image: authup/authup:latest
container_name: bridgehead-dnpm-authup
volumes:
- /var/cache/bridgehead/dnpm/authup:/usr/src/app/writable
- /var/cache/bridgehead/dnpm/authup:/usr/src/app/writable:Z
depends_on:
dnpm-mysql:
condition: service_healthy
@ -68,7 +68,7 @@ services:
- AUTHUP_URL=robot://system:${DNPM_AUTHUP_SECRET}@http://dnpm-authup:3000
volumes:
- /etc/bridgehead/dnpm/config:/dnpm_config
- /var/cache/bridgehead/dnpm/backend-data:/dnpm_data
- /var/cache/bridgehead/dnpm/backend-data:/dnpm_data:Z
depends_on:
dnpm-authup:
condition: service_healthy

View File

@ -24,7 +24,7 @@ services:
- "traefik.http.middlewares.exporter_ccp_strip.stripprefix.prefixes=/ccp-exporter"
- "traefik.http.routers.exporter_ccp.middlewares=exporter_ccp_strip"
volumes:
- "/var/cache/bridgehead/ccp/exporter-files:/app/exporter-files/output"
- "/var/cache/bridgehead/ccp/exporter-files:/app/exporter-files/output:z"
exporter-db:
image: docker.verbis.dkfz.de/cache/postgres:${POSTGRES_TAG}
@ -35,7 +35,7 @@ services:
POSTGRES_DB: "exporter"
volumes:
# Consider removing this volume once we find a solution to save Lens-queries to be executed in the explorer.
- "/var/cache/bridgehead/ccp/exporter-db:/var/lib/postgresql/data"
- "/var/cache/bridgehead/ccp/exporter-db:/var/lib/postgresql/data:Z"
reporter:
image: docker.verbis.dkfz.de/ccp/dktk-reporter:latest
@ -57,7 +57,7 @@ services:
# There is a risk that the bridgehead restarts, losing the already created export.
volumes:
- "/var/cache/bridgehead/ccp/reporter-files:/app/reports"
- "/var/cache/bridgehead/ccp/reporter-files:/app/reports:z"
labels:
- "traefik.enable=true"
- "traefik.http.routers.reporter_ccp.rule=PathPrefix(`/ccp-reporter`)"

View File

@ -22,8 +22,8 @@ services:
POSTGRES_PASSWORD: "${DASHBOARD_DB_PASSWORD}" # Set in dashboard-setup.sh
POSTGRES_DB: "dashboard"
volumes:
- "/var/cache/bridgehead/ccp/dashboard-db:/var/lib/postgresql/data"
- "/var/cache/bridgehead/ccp/dashboard-db:/var/lib/postgresql/data:Z"
focus:
environment:
POSTGRES_CONNECTION_STRING: "postgresql://dashboard:${DASHBOARD_DB_PASSWORD}@dashboard-db/dashboard"
POSTGRES_CONNECTION_STRING: "postgresql://dashboard:${DASHBOARD_DB_PASSWORD}@dashboard-db/dashboard"

View File

@ -62,7 +62,7 @@ services:
volumes:
- "patientlist-db-data:/var/lib/postgresql/data"
# NOTE: Add backups here. This is only imported if /var/lib/bridgehead/data/patientlist/ is empty!!!
- "/tmp/bridgehead/patientlist/:/docker-entrypoint-initdb.d/"
- "/tmp/bridgehead/patientlist/:/docker-entrypoint-initdb.d/:Z"
traefik-forward-auth:
image: docker.verbis.dkfz.de/cache/oauth2-proxy/oauth2-proxy:latest

View File

@ -32,8 +32,8 @@ services:
- "traefik.http.routers.mtba_ccp.tls=true"
volumes:
- /var/cache/bridgehead/ccp/mtba/input:/app/input
- /var/cache/bridgehead/ccp/mtba/persist:/app/persist
- /var/cache/bridgehead/ccp/mtba/input:/app/input:z
- /var/cache/bridgehead/ccp/mtba/persist:/app/persist:z
# TODO: Include CBioPortal in Deployment ...
# NOTE: CBioPortal can't load data while the system is running. So after import of data bridgehead needs to be restarted!