Compare commits

...

4 Commits

Author SHA1 Message Date
Tobias Kussel
add8886849 Remove remaining secret 2025-07-08 10:13:08 +02:00
tobiaskussel
078c16e8dd Set SELinux labels for bind mounts, replace secrets with bind mounts 2025-07-03 14:09:01 +00:00
Niklas Sombert
98e0512a61 dnpm: Make volumes in /var/cache writable for containers 2025-07-02 11:16:45 +00:00
Niklas Sombert
c530b55aa4 Add support for SELinux systems 2025-07-02 11:16:31 +00:00
26 changed files with 99 additions and 99 deletions

View File

@@ -26,7 +26,3 @@ services:
volumes: volumes:
blaze-data: blaze-data:
# used in modules *-locator.yml
secrets:
proxy.pem:
file: /etc/bridgehead/pki/${SITE_ID}.priv.pem

View File

@@ -26,11 +26,11 @@ services:
ALL_PROXY: http://forward_proxy:3128 ALL_PROXY: http://forward_proxy:3128
TLS_CA_CERTIFICATES_DIR: /conf/trusted-ca-certs TLS_CA_CERTIFICATES_DIR: /conf/trusted-ca-certs
ROOTCERT_FILE: /conf/root.crt.pem ROOTCERT_FILE: /conf/root.crt.pem
secrets:
- proxy.pem
depends_on: depends_on:
- "forward_proxy" - "forward_proxy"
volumes: volumes:
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro - /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro
- /srv/docker/bridgehead/bbmri/modules/${ERIC_ROOT_CERT}.root.crt.pem:/conf/root.crt.pem:ro - /srv/docker/bridgehead/bbmri/modules/${ERIC_ROOT_CERT}.root.crt.pem:/conf/root.crt.pem:ro,Z
# secrets don't seem to allow us to specify Z
- /etc/bridgehead/pki/${SITE_ID}.priv.pem:/run/secrets/proxy.pem:ro

View File

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

View File

@@ -26,11 +26,11 @@ services:
ALL_PROXY: http://forward_proxy:3128 ALL_PROXY: http://forward_proxy:3128
TLS_CA_CERTIFICATES_DIR: /conf/trusted-ca-certs TLS_CA_CERTIFICATES_DIR: /conf/trusted-ca-certs
ROOTCERT_FILE: /conf/root.crt.pem ROOTCERT_FILE: /conf/root.crt.pem
secrets:
- proxy.pem
depends_on: depends_on:
- "forward_proxy" - "forward_proxy"
volumes: volumes:
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro - /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro
- /srv/docker/bridgehead/bbmri/modules/${GBN_ROOT_CERT}.root.crt.pem:/conf/root.crt.pem:ro - /srv/docker/bridgehead/bbmri/modules/${GBN_ROOT_CERT}.root.crt.pem:/conf/root.crt.pem:ro,Z
# secrets don't seem to allow us to specify Z
- /etc/bridgehead/pki/${SITE_ID}.priv.pem:/run/secrets/proxy.pem:ro

View File

@@ -35,7 +35,7 @@ services:
QUERIES_TO_CACHE: '/queries_to_cache.conf' QUERIES_TO_CACHE: '/queries_to_cache.conf'
ENDPOINT_TYPE: ${FOCUS_ENDPOINT_TYPE:-blaze} ENDPOINT_TYPE: ${FOCUS_ENDPOINT_TYPE:-blaze}
volumes: volumes:
- /srv/docker/bridgehead/cce/queries_to_cache.conf:/queries_to_cache.conf:ro - /srv/docker/bridgehead/cce/queries_to_cache.conf:/queries_to_cache.conf:ro,Z
depends_on: depends_on:
- "beam-proxy" - "beam-proxy"
- "blaze" - "blaze"
@@ -57,12 +57,10 @@ services:
- "forward_proxy" - "forward_proxy"
volumes: volumes:
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro - /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro
- /srv/docker/bridgehead/cce/root.crt.pem:/conf/root.crt.pem:ro - /srv/docker/bridgehead/cce/root.crt.pem:/conf/root.crt.pem:ro,Z
# secrets don't seem to allow us to specify Z
- /etc/bridgehead/pki/${SITE_ID}.priv.pem:/run/secrets/proxy.pem:ro
volumes: volumes:
blaze-data: blaze-data:
secrets:
proxy.pem:
file: /etc/bridgehead/pki/${SITE_ID}.priv.pem

View File

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

View File

@@ -35,7 +35,7 @@ services:
QUERIES_TO_CACHE: '/queries_to_cache.conf' QUERIES_TO_CACHE: '/queries_to_cache.conf'
ENDPOINT_TYPE: ${FOCUS_ENDPOINT_TYPE:-blaze} ENDPOINT_TYPE: ${FOCUS_ENDPOINT_TYPE:-blaze}
volumes: volumes:
- /srv/docker/bridgehead/ccp/queries_to_cache.conf:/queries_to_cache.conf:ro - /srv/docker/bridgehead/ccp/queries_to_cache.conf:/queries_to_cache.conf:ro,Z
depends_on: depends_on:
- "beam-proxy" - "beam-proxy"
- "blaze" - "blaze"
@@ -57,11 +57,9 @@ services:
- "forward_proxy" - "forward_proxy"
volumes: volumes:
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro - /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro
- /srv/docker/bridgehead/ccp/root.crt.pem:/conf/root.crt.pem:ro - /srv/docker/bridgehead/ccp/root.crt.pem:/conf/root.crt.pem:ro,Z
# secrets don't seem to allow us to specify Z
- /etc/bridgehead/pki/${SITE_ID}.priv.pem:/run/secrets/proxy.pem:ro
volumes: volumes:
blaze-data: blaze-data:
secrets:
proxy.pem:
file: /etc/bridgehead/pki/${SITE_ID}.priv.pem

View File

@@ -35,10 +35,10 @@ services:
BEAM_SECRET: ${TOKEN_MANAGER_SECRET} BEAM_SECRET: ${TOKEN_MANAGER_SECRET}
BEAM_DATASHIELD_PROXY: request-manager BEAM_DATASHIELD_PROXY: request-manager
volumes: volumes:
- "/var/cache/bridgehead/ccp/opal-metadata-db:/srv" # Opal metadata - "/var/cache/bridgehead/ccp/opal-metadata-db:/srv:Z" # Opal metadata
secrets: # secrets don't seem to allow us to specify Z/z
- opal-cert.pem - /tmp/bridgehead/opal-cert.pem:/run/secrets/opal-cert.pem:z
- opal-key.pem - /tmp/bridgehead/opal-key.pem:/run/secrets/opal-key.pem:Z
opal-db: opal-db:
container_name: bridgehead-opal-db container_name: bridgehead-opal-db
@@ -48,7 +48,7 @@ services:
POSTGRES_USER: "opal" POSTGRES_USER: "opal"
POSTGRES_DB: "opal" POSTGRES_DB: "opal"
volumes: 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: opal-rserver:
container_name: bridgehead-opal-rserver container_name: bridgehead-opal-rserver
@@ -67,20 +67,14 @@ services:
DISCOVERY_URL: "./map/central.json" DISCOVERY_URL: "./map/central.json"
LOCAL_TARGETS_FILE: "./map/local.json" LOCAL_TARGETS_FILE: "./map/local.json"
NO_AUTH: "true" NO_AUTH: "true"
secrets:
- opal-cert.pem
depends_on: depends_on:
- beam-proxy - beam-proxy
volumes: 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: beam-proxy:
environment: environment:
APP_datashield-connect_KEY: ${DATASHIELD_CONNECT_SECRET} APP_datashield-connect_KEY: ${DATASHIELD_CONNECT_SECRET}
APP_token-manager_KEY: ${TOKEN_MANAGER_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: volumes:
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro - /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro
- /etc/bridgehead/dnpm/local_targets.json:/conf/connect_targets.json: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: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.dnpm-connect.rule=PathPrefix(`/dnpm-connect`)" - "traefik.http.routers.dnpm-connect.rule=PathPrefix(`/dnpm-connect`)"

View File

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

View File

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

View File

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

View File

@@ -62,7 +62,7 @@ services:
volumes: volumes:
- "patientlist-db-data:/var/lib/postgresql/data" - "patientlist-db-data:/var/lib/postgresql/data"
# NOTE: Add backups here. This is only imported if /var/lib/bridgehead/data/patientlist/ is empty!!! # 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: traefik-forward-auth:
image: docker.verbis.dkfz.de/cache/oauth2-proxy/oauth2-proxy:latest 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" - "traefik.http.routers.mtba_ccp.tls=true"
volumes: volumes:
- /var/cache/bridgehead/ccp/mtba/input:/app/input - /var/cache/bridgehead/ccp/mtba/input:/app/input:z
- /var/cache/bridgehead/ccp/mtba/persist:/app/persist - /var/cache/bridgehead/ccp/mtba/persist:/app/persist:z
# TODO: Include CBioPortal in Deployment ... # 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! # NOTE: CBioPortal can't load data while the system is running. So after import of data bridgehead needs to be restarted!

View File

@@ -33,7 +33,7 @@ services:
EPSILON: 0.28 EPSILON: 0.28
QUERIES_TO_CACHE: '/queries_to_cache.conf' QUERIES_TO_CACHE: '/queries_to_cache.conf'
volumes: volumes:
- /srv/docker/bridgehead/dhki/queries_to_cache.conf:/queries_to_cache.conf:ro - /srv/docker/bridgehead/dhki/queries_to_cache.conf:/queries_to_cache.conf:ro,Z
depends_on: depends_on:
- "beam-proxy" - "beam-proxy"
- "blaze" - "blaze"
@@ -55,12 +55,10 @@ services:
- "forward_proxy" - "forward_proxy"
volumes: volumes:
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro - /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro
- /srv/docker/bridgehead/dhki/root.crt.pem:/conf/root.crt.pem:ro - /srv/docker/bridgehead/dhki/root.crt.pem:/conf/root.crt.pem:ro,Z
# secrets don't seem to allow us to specify Z
- /etc/bridgehead/pki/${SITE_ID}.priv.pem:/run/secrets/proxy.pem:ro
volumes: volumes:
blaze-data: blaze-data:
secrets:
proxy.pem:
file: /etc/bridgehead/pki/${SITE_ID}.priv.pem

View File

@@ -35,7 +35,7 @@ services:
QUERIES_TO_CACHE: '/queries_to_cache.conf' QUERIES_TO_CACHE: '/queries_to_cache.conf'
ENDPOINT_TYPE: ${FOCUS_ENDPOINT_TYPE:-blaze} ENDPOINT_TYPE: ${FOCUS_ENDPOINT_TYPE:-blaze}
volumes: volumes:
- /srv/docker/bridgehead/itcc/queries_to_cache.conf:/queries_to_cache.conf:ro - /srv/docker/bridgehead/itcc/queries_to_cache.conf:/queries_to_cache.conf:ro,Z
depends_on: depends_on:
- "beam-proxy" - "beam-proxy"
- "blaze" - "blaze"
@@ -51,18 +51,14 @@ services:
ALL_PROXY: http://forward_proxy:3128 ALL_PROXY: http://forward_proxy:3128
TLS_CA_CERTIFICATES_DIR: /conf/trusted-ca-certs TLS_CA_CERTIFICATES_DIR: /conf/trusted-ca-certs
ROOTCERT_FILE: /conf/root.crt.pem ROOTCERT_FILE: /conf/root.crt.pem
secrets:
- proxy.pem
depends_on: depends_on:
- "forward_proxy" - "forward_proxy"
volumes: volumes:
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro - /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro
- /srv/docker/bridgehead/itcc/root.crt.pem:/conf/root.crt.pem:ro - /srv/docker/bridgehead/itcc/root.crt.pem:/conf/root.crt.pem:ro,Z
# secrets don't seem to allow us to specify Z
- /etc/bridgehead/pki/${SITE_ID}.priv.pem:/run/secrets/proxy.pem:ro
volumes: volumes:
blaze-data: blaze-data:
secrets:
proxy.pem:
file: /etc/bridgehead/pki/${SITE_ID}.priv.pem

View File

@@ -56,12 +56,10 @@ services:
- "forward_proxy" - "forward_proxy"
volumes: volumes:
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro - /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro
- /srv/docker/bridgehead/kr/root.crt.pem:/conf/root.crt.pem:ro - /srv/docker/bridgehead/kr/root.crt.pem:/conf/root.crt.pem:ro,Z
# secrets don't seem to allow us to specify Z
- /etc/bridgehead/pki/${SITE_ID}.priv.pem:/run/secrets/proxy.pem:ro
volumes: volumes:
blaze-data: blaze-data:
secrets:
proxy.pem:
file: /etc/bridgehead/pki/${SITE_ID}.priv.pem

View File

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

View File

@@ -71,9 +71,6 @@ services:
HTTP_PROXY: "http://forward_proxy:3128" HTTP_PROXY: "http://forward_proxy:3128"
ENABLE_MTBA: "${ENABLE_MTBA}" ENABLE_MTBA: "${ENABLE_MTBA}"
ENABLE_DATASHIELD: "${ENABLE_DATASHIELD}" ENABLE_DATASHIELD: "${ENABLE_DATASHIELD}"
secrets: volumes:
- ccp.conf # secrets don't seem to allow us to specify Z
- /etc/bridgehead/ccp.conf:/run/secrets/ccp.conf:ro
secrets:
ccp.conf:
file: /etc/bridgehead/ccp.conf

View File

@@ -36,6 +36,32 @@ setupProxy() {
export HTTPS_PROXY_HOST HTTPS_PROXY_PORT HTTPS_PROXY_FULL_URL export HTTPS_PROXY_HOST HTTPS_PROXY_PORT HTTPS_PROXY_FULL_URL
} }
checkAndSetSelinux() {
# This is needed for the systemd service to start on SELinux systems.
if ! command -v sestatus > /dev/null 2>&1; then
echo "SELinux not available; nothing to do"
return
fi
if ! sestatus | grep "SELinux status:" | grep enabled > /dev/null; then
echo "SELinux disabled; nothing to do"
return
fi
current_mode="$(sestatus | grep 'Current mode:' | tr -s ' ' | cut -d' ' -f 3)"
echo "SELinux is active and ${current_mode}, checking for labels..."
# TODO: perhaps split this into checkSelinux (without the need for root) and setSelinux (needing root)
# "stat /srv/docker/bridgehead/bridgehead --printf %C" could be used for a check that doesn't need root
exitIfNotRoot
labels_for_srv="$(semanage fcontext --list | grep -e ^/srv)"
echo "Found the following labels for /srv:"
echo "${labels_for_srv}"
if ! echo "${labels_for_srv}" | grep -e ^/srv/docker/bridgehead/bridgehead > /dev/null; then
echo "Adding a label for /srv/docker/bridgehead/bridgehead..."
semanage fcontext --add --type bin_t /srv/docker/bridgehead/bridgehead
fi
restorecon -v /srv/docker/bridgehead/bridgehead # this survives a reboot
# TODO: check if this survives updates
}
exitIfNotRoot() { exitIfNotRoot() {
if [ "$EUID" -ne 0 ]; then if [ "$EUID" -ne 0 ]; then
log "ERROR" "Please run as root" log "ERROR" "Please run as root"

View File

@@ -3,6 +3,7 @@
source lib/functions.sh source lib/functions.sh
exitIfNotRoot exitIfNotRoot
checkAndSetSelinux
if [ $# -eq 0 ]; then if [ $# -eq 0 ]; then
log "ERROR" "Please provide a Project as argument" log "ERROR" "Please provide a Project as argument"

View File

@@ -25,6 +25,12 @@ services:
ports: ports:
- 80:80 - 80:80
- 443:443 - 443:443
security_opt:
# allow access to the docker socket on systems with SELinux
- "label:type:container_runtime_t"
cap_add:
# Allow binding to ports <1024 without root
- NET_BIND_SERVICE
volumes: volumes:
- /etc/bridgehead/traefik-tls:/certs:ro - /etc/bridgehead/traefik-tls:/certs:ro
- ../lib/traefik-configuration/:/configuration:ro - ../lib/traefik-configuration/:/configuration:ro

View File

@@ -12,13 +12,13 @@ services:
ALL_PROXY: http://forward_proxy:3128 ALL_PROXY: http://forward_proxy:3128
TLS_CA_CERTIFICATES_DIR: ./conf/trusted-ca-certs TLS_CA_CERTIFICATES_DIR: ./conf/trusted-ca-certs
ROOTCERT_FILE: ./conf/root.crt.pem ROOTCERT_FILE: ./conf/root.crt.pem
secrets:
- proxy.pem
depends_on: depends_on:
- "forward_proxy" - "forward_proxy"
volumes: volumes:
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro - /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro
- /srv/docker/bridgehead/ccp/root.crt.pem:/conf/root.crt.pem:ro - /srv/docker/bridgehead/ccp/root.crt.pem:/conf/root.crt.pem:ro,Z
# secrets don't seem to allow us to specify Z
- /etc/bridgehead/pki/${SITE_ID}.priv.pem:/run/secrets/proxy.pem:ro
dnpm-beam-connect: dnpm-beam-connect:
depends_on: [ dnpm-beam-proxy ] depends_on: [ dnpm-beam-proxy ]
@@ -41,7 +41,7 @@ services:
volumes: volumes:
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro - /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro
- /etc/bridgehead/dnpm/local_targets.json:/conf/connect_targets.json: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: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.http.routers.dnpm-connect.rule=PathPrefix(`/dnpm-connect`)" - "traefik.http.routers.dnpm-connect.rule=PathPrefix(`/dnpm-connect`)"
@@ -53,7 +53,3 @@ services:
dnpm-echo: dnpm-echo:
image: docker.verbis.dkfz.de/cache/samply/bridgehead-echo:latest image: docker.verbis.dkfz.de/cache/samply/bridgehead-echo:latest
container_name: bridgehead-dnpm-echo container_name: bridgehead-dnpm-echo
secrets:
proxy.pem:
file: /etc/bridgehead/pki/${SITE_ID}.priv.pem

View File

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

View File

@@ -10,8 +10,4 @@ services:
SSH_TUNNEL_PORT: "${SSH_TUNNEL_PORT:-22}" SSH_TUNNEL_PORT: "${SSH_TUNNEL_PORT:-22}"
volumes: volumes:
- "/etc/bridgehead/ssh-tunnel.conf:/ssh-tunnel.conf:ro" - "/etc/bridgehead/ssh-tunnel.conf:/ssh-tunnel.conf:ro"
secrets: - "/etc/bridgehead/pki/ssh-tunnel.priv.pem:/run/secrets/privkey:ro"
- privkey
secrets:
privkey:
file: /etc/bridgehead/pki/ssh-tunnel.priv.pem

View File

@@ -27,7 +27,7 @@ services:
- NO_PROXY=${TRANSFAIR_NO_PROXIES} - NO_PROXY=${TRANSFAIR_NO_PROXIES}
- ALL_PROXY=http://forward_proxy:3128 - ALL_PROXY=http://forward_proxy:3128
volumes: volumes:
- /var/cache/bridgehead/${PROJECT}/transfair:/transfair - /var/cache/bridgehead/${PROJECT}/transfair:/transfair:Z
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro - /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"