Compare commits

..

2 Commits

Author SHA1 Message Date
David Juarez
1ee2776238 Test 2025-07-08 14:14:37 +02:00
David Juarez
0ae8627df8 changed: Keycloak instead of Authentik 2025-07-08 13:40:55 +02:00
21 changed files with 29 additions and 97 deletions

View File

@@ -85,8 +85,6 @@ The following URLs need to be accessible (prefix with `https://`):
* hub.docker.com
* registry-1.docker.io
* production.cloudflare.docker.com
* GitHub Container Registry - (for use of DNPM:DIP)
* ghcr.io
* To report bridgeheads operational status
* healthchecks.verbis.dkfz.de
* only for DKTK/CCP
@@ -97,7 +95,7 @@ The following URLs need to be accessible (prefix with `https://`):
* only for German Biobank Node
* broker.bbmri.de
> 📝 This URL list is subject to change. Instead of the individual names, we highly recommend whitelisting wildcard domains: *.dkfz.de, github.com, *.docker.com, *.docker.io, *.ghcr.io, *.samply.de, *.bbmri.de.
> 📝 This URL list is subject to change. Instead of the individual names, we highly recommend whitelisting wildcard domains: *.dkfz.de, github.com, *.docker.com, *.docker.io, *.samply.de, *.bbmri.de.
> 📝 Ubuntu's pre-installed uncomplicated firewall (ufw) is known to conflict with Docker, more info [here](https://github.com/chaifeng/ufw-docker).

View File

@@ -19,7 +19,7 @@ services:
HTTP_RELATIVE_PATH: "/bbmri-teiler"
teiler-dashboard:
image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:${TEILER_DASHBOARD_TAG}
image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:develop
container_name: bridgehead-teiler-dashboard
labels:
- "traefik.enable=true"

View File

@@ -19,7 +19,7 @@ services:
HTTP_RELATIVE_PATH: "/cce-teiler"
teiler-dashboard:
image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:${TEILER_DASHBOARD_TAG}
image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:develop
container_name: bridgehead-teiler-dashboard
labels:
- "traefik.enable=true"

View File

@@ -43,7 +43,7 @@ services:
- "traefik.http.routers.dnpm-auth.tls=true"
dnpm-portal:
image: ghcr.io/dnpm-dip/portal:${DNPM_IMAGE_TAG:-latest}
image: ghcr.io/dnpm-dip/portal:{DNPM_IMAGE_TAG:-latest}
container_name: bridgehead-dnpm-portal
environment:
- NUXT_API_URL=http://dnpm-backend:9000/
@@ -58,7 +58,7 @@ services:
dnpm-backend:
container_name: bridgehead-dnpm-backend
image: ghcr.io/dnpm-dip/api-gateway:latest
image: ghcr.io/dnpm-dip/backend:{DNPM_IMAGE_TAG:-latest}
environment:
- LOCAL_SITE=${ZPM_SITE}:${SITE_NAME} # Format: {Site-ID}:{Site-name}, e.g. UKT:Tübingen
- RD_RANDOM_DATA=${DNPM_SYNTH_NUM:--1}

View File

@@ -14,7 +14,6 @@ services:
MAGICPL_CONNECTOR_APIKEY: ${IDMANAGER_READ_APIKEY}
MAGICPL_CENTRAL_PATIENTLIST_APIKEY: ${IDMANAGER_CENTRAL_PATIENTLIST_APIKEY}
MAGICPL_CONTROLNUMBERGENERATOR_APIKEY: ${IDMANAGER_CONTROLNUMBERGENERATOR_APIKEY}
MAGICPL_OIDC_PROVIDER: ${OIDC_PRIVATE_URL}
depends_on:
- patientlist
- traefik-forward-auth
@@ -72,14 +71,12 @@ services:
- https_proxy=http://forward_proxy:3128
- OAUTH2_PROXY_PROVIDER=oidc
- OAUTH2_PROXY_SKIP_PROVIDER_BUTTON=true
- OAUTH2_PROXY_OIDC_ISSUER_URL=${OIDC_PRIVATE_URL}
- OAUTH2_PROXY_CLIENT_ID=${OIDC_PRIVATE_CLIENT_ID}
- OAUTH2_PROXY_CLIENT_SECRET=${OIDC_CLIENT_SECRET}
- OAUTH2_PROXY_OIDC_ISSUER_URL=https://login.verbis.dkfz.de/realms/master
- OAUTH2_PROXY_CLIENT_ID=bridgehead-${SITE_ID}
- OAUTH2_PROXY_CLIENT_SECRET=${IDMANAGER_AUTH_CLIENT_SECRET}
- OAUTH2_PROXY_COOKIE_SECRET=${IDMANAGER_AUTH_COOKIE_SECRET}
- OAUTH2_PROXY_COOKIE_NAME=_BRIDGEHEAD_oauth2_idm
- OAUTH2_PROXY_COOKIE_DOMAINS=.${HOST}
- OAUTH2_PROXY_COOKIE_REFRESH=4m
- OAUTH2_PROXY_COOKIE_EXPIRE=24h
- OAUTH2_PROXY_HTTP_ADDRESS=:4180
- OAUTH2_PROXY_REVERSE_PROXY=true
- OAUTH2_PROXY_WHITELIST_DOMAINS=.${HOST}
@@ -90,8 +87,8 @@ services:
- OAUTH2_PROXY_SET_AUTHORIZATION_HEADER=true
- OAUTH2_PROXY_SET_XAUTHREQUEST=true
# Keycloak has an expiration time of 60s therefore oauth2-proxy needs to refresh after that
- OAUTH2_PROXY_ALLOWED_GROUPS=${OIDC_PSP_GROUP}
- OAUTH2_PROXY_OIDC_GROUPS_CLAIM=${OIDC_GROUP_CLAIM}
- OAUTH2_PROXY_COOKIE_REFRESH=60s
- OAUTH2_PROXY_ALLOWED_GROUPS=DKTK-CCP-PPSN
- OAUTH2_PROXY_PROXY_PREFIX=/oauth2-idm
labels:
- "traefik.enable=true"

View File

@@ -14,8 +14,6 @@ function idManagementSetup() {
# Ensure old ids are working !!!
export IDMANAGEMENT_FRIENDLY_ID=$(legacyIdMapping "$SITE_ID")
add_private_oidc_redirect_url "/oauth2-idm/callback"
fi
}

View File

@@ -2,7 +2,7 @@ version: "3.7"
services:
mtba:
image: docker.verbis.dkfz.de/cache/samply/mtba:${MTBA_TAG}
image: docker.verbis.dkfz.de/cache/samply/mtba:develop
container_name: bridgehead-mtba
environment:
BLAZE_STORE_URL: http://blaze:8080
@@ -22,14 +22,8 @@ services:
HTTP_RELATIVE_PATH: "/mtba"
OIDC_ADMIN_GROUP: "${OIDC_ADMIN_GROUP}"
OIDC_CLIENT_ID: "${OIDC_PRIVATE_CLIENT_ID}"
# TODO: Add following variables after moving to Authentik:
#OIDC_CLIENT_SECRET: "${OIDC_CLIENT_SECRET}"
#OIDC_URL: "${OIDC_URL}"
# TODO: Remove following variables after moving to Authentik:
# Please add KECLOAK_CLIENT_SECRET in ccp.conf
OIDC_CLIENT_SECRET: "${KEYCLOAK_CLIENT_SECRET}"
OIDC_URL: "https://login.verbis.dkfz.de/realms/test-realm-01"
OIDC_ADMIN_URL: "https://login.verbis.dkfz.de/admin/realms/test-realm-01"
OIDC_CLIENT_SECRET: "${OIDC_CLIENT_SECRET}"
OIDC_URL: "${OIDC_URL}"
labels:
- "traefik.enable=true"

View File

@@ -19,7 +19,7 @@ services:
HTTP_RELATIVE_PATH: "/ccp-teiler"
teiler-dashboard:
image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:${TEILER_DASHBOARD_TAG}
image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:develop
container_name: bridgehead-teiler-dashboard
labels:
- "traefik.enable=true"

View File

@@ -10,11 +10,12 @@ BROKER_URL_FOR_PREREQ=$BROKER_URL
OIDC_USER_GROUP="DKTK_CCP_$(capitalize_first_letter ${SITE_ID})"
OIDC_ADMIN_GROUP="DKTK_CCP_$(capitalize_first_letter ${SITE_ID})_Verwalter"
OIDC_PSP_GROUP="DKTK_CCP_$(capitalize_first_letter ${SITE_ID})_PSP"
OIDC_PRIVATE_CLIENT_ID=${SITE_ID}-private
OIDC_PUBLIC_CLIENT_ID=${SITE_ID}-public
OIDC_URL="https://sso.verbis.dkfz.de/application/o/${OIDC_PUBLIC_CLIENT_ID}/"
OIDC_PRIVATE_URL="https://sso.verbis.dkfz.de/application/o/${OIDC_PRIVATE_CLIENT_ID}/"
#OIDC_URL="https://sso.verbis.dkfz.de/application/o/${OIDC_PUBLIC_CLIENT_ID}/"
#OIDC_PRIVATE_URL="https://sso.verbis.dkfz.de/application/o/${OIDC_PRIVATE_CLIENT_ID}/"
OIDC_URL="https://login.verbis.dkfz.de/realms/test-realm-01"
OIDC_PRIVATE_URL="https://login.verbis.dkfz.de/realms/test-realm-01"
OIDC_GROUP_CLAIM="groups"
for module in $PROJECT/modules/*.sh

View File

@@ -39,7 +39,7 @@ services:
- "blaze"
beam-proxy:
image: docker.verbis.dkfz.de/cache/samply/beam-proxy:${BEAM_TAG}
image: docker.verbis.dkfz.de/cache/samply/beam-proxy:develop
container_name: bridgehead-beam-proxy
environment:
BROKER_URL: ${BROKER_URL}

View File

@@ -23,5 +23,4 @@ do
source $module
done
transfairSetup
scoutSetup
transfairSetup

View File

@@ -40,7 +40,7 @@ services:
- "blaze"
beam-proxy:
image: docker.verbis.dkfz.de/cache/samply/beam-proxy:${BEAM_TAG}
image: docker.verbis.dkfz.de/cache/samply/beam-proxy:develop
container_name: bridgehead-beam-proxy
environment:
BROKER_URL: ${BROKER_URL}

View File

@@ -19,7 +19,7 @@ services:
HTTP_RELATIVE_PATH: "/kr-teiler"
teiler-dashboard:
image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:${TEILER_DASHBOARD_TAG}
image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:develop
container_name: bridgehead-teiler-dashboard
labels:
- "traefik.enable=true"

View File

@@ -327,7 +327,7 @@ function sync_secrets() {
-e ALL_PROXY=$HTTPS_PROXY_FULL_URL \
-e PROXY_ID=$proxy_id \
-e BROKER_URL=$broker_url \
-e OIDC_PROVIDER=secret-sync-central.test-secret-sync.$broker_id \
-e OIDC_PROVIDER=secret-sync-central.secret-sync.$broker_id \
-e SECRET_DEFINITIONS=$secret_sync_args \
docker.verbis.dkfz.de/cache/samply/secret-sync-local:latest

View File

@@ -43,7 +43,7 @@ services:
- "traefik.http.routers.dnpm-auth.tls=true"
dnpm-portal:
image: ghcr.io/dnpm-dip/portal:${DNPM_IMAGE_TAG:-latest}
image: ghcr.io/dnpm-dip/portal:{DNPM_IMAGE_TAG:-latest}
container_name: bridgehead-dnpm-portal
environment:
- NUXT_API_URL=http://dnpm-backend:9000/
@@ -58,7 +58,7 @@ services:
dnpm-backend:
container_name: bridgehead-dnpm-backend
image: ghcr.io/dnpm-dip/api-gateway:latest
image: ghcr.io/dnpm-dip/backend:{DNPM_IMAGE_TAG:-latest}
environment:
- LOCAL_SITE=${ZPM_SITE}:${SITE_NAME} # Format: {Site-ID}:{Site-name}, e.g. UKT:Tübingen
- RD_RANDOM_DATA=${DNPM_SYNTH_NUM:--1}

View File

@@ -1,40 +0,0 @@
volumes:
scout-blaze-data:
services:
traefik:
labels:
- "traefik.http.middlewares.additional-users-auth.basicauth.users=${SCOUT_BASIC_AUTH_USERS}"
scout-blaze:
image: docker.verbis.dkfz.de/cache/samply/blaze:${BLAZE_TAG}
container_name: bridgehead-scout-blaze
environment:
BASE_URL: "http://bridgehead-scout-blaze:8080"
ENFORCE_REFERENTIAL_INTEGRITY: "false"
volumes:
- "scout-blaze-data:/app/data"
labels:
- "traefik.enable=true"
- "traefik.http.routers.scout-blaze.rule=PathPrefix(`/scout-blaze`)"
- "traefik.http.middlewares.scout-blaze-stripprefix.stripprefix.prefixes=/scout-blaze"
- "traefik.http.services.scout-blaze.loadbalancer.server.port=8080"
- "traefik.http.routers.scout-blaze.middlewares=scout-blaze-stripprefix,additional-users-auth"
- "traefik.http.routers.scout-blaze.tls=true"
scout:
image: samply/scout:main
container_name: bridgehead-scout
configs:
- scout.toml
labels:
- "traefik.enable=true"
- "traefik.http.routers.scout.rule=PathPrefix(`/scout`)"
- "traefik.http.services.scout.loadbalancer.server.port=8080"
- "traefik.http.routers.scout.middlewares=additional-users-auth"
- "traefik.http.routers.scout.tls=true"
configs:
scout.toml:
content: |
fhir_base_url = "http://scout-blaze:8080/fhir"

View File

@@ -1,8 +0,0 @@
#!/bin/bash -e
function scoutSetup() {
if [[ -n "$ENABLE_SCOUT" && -n "$SCOUT_BASIC_AUTH_USERS" ]]; then
echo "Starting scout."
OVERRIDE+=" -f ./modules/scout-compose.yml"
fi
}

View File

@@ -10,7 +10,7 @@ services:
- TTP_GW_SOURCE
- TTP_GW_EPIX_DOMAIN
- TTP_GW_GPAS_DOMAIN
- TTP_GW_GPAS_URL
- TTP_TYPE
- TTP_AUTH
- PROJECT_ID_SYSTEM
- FHIR_REQUEST_URL=${FHIR_REQUEST_URL}
@@ -26,7 +26,6 @@ services:
- TLS_DISABLE=${TRANSFAIR_TLS_DISABLE:-false}
- NO_PROXY=${TRANSFAIR_NO_PROXIES}
- ALL_PROXY=http://forward_proxy:3128
command: dic ${TTP_TYPE}
volumes:
- /var/cache/bridgehead/${PROJECT}/transfair:/transfair
- /etc/bridgehead/trusted-ca-certs:/conf/trusted-ca-certs:ro

View File

@@ -1,6 +1,4 @@
FOCUS_TAG=develop
BEAM_TAG=develop
BLAZE_TAG=main
POSTGRES_TAG=15.13-alpine
TEILER_DASHBOARD_TAG=develop
MTBA_TAG=develop
POSTGRES_TAG=15.13-alpine

View File

@@ -1,6 +1,4 @@
FOCUS_TAG=main
BEAM_TAG=main
BLAZE_TAG=0.32
POSTGRES_TAG=15.13-alpine
TEILER_DASHBOARD_TAG=main
MTBA_TAG=main
POSTGRES_TAG=15.13-alpine

View File

@@ -1,6 +1,4 @@
FOCUS_TAG=develop
BEAM_TAG=develop
BLAZE_TAG=main
POSTGRES_TAG=15.13-alpine
TEILER_DASHBOARD_TAG=develop
MTBA_TAG=develop
POSTGRES_TAG=15.13-alpine