Files
bridgehead/ccp/modules/ovis-compose.yml
2026-03-02 09:14:05 +01:00

88 lines
3.5 KiB
YAML

version: "3.7"
services:
fhir-transformer:
image: docker.verbis.dkfz.de/ovis/adt-mon-gql-fhir-transformer:latest
container_name: bridgehead-ccp-ovis-fhir-transformer
restart: on-failure
environment:
FHIR_SERVER_URL: ${FHIR_SERVER_URL:-http://bridgehead-ccp-blaze:8080/fhir}
FHIR_USERNAME: ${FHIR_USERNAME}
FHIR_PASSWORD: ${FHIR_PASSWORD}
volumes:
- /var/cache/bridgehead/ccp/ovis/shared_data:/app/output
mongo:
image: mongo:${MONGO_VER:-latest}
container_name: bridgehead-ccp-ovis-mongo
restart: always
command: mongod
volumes:
- /var/cache/bridgehead/ccp/ovis/mongo/init/init.js:/docker-entrypoint-initdb.d/init.js:ro
backend:
image: docker.verbis.dkfz.de/ovis/adt-mon-gql-backend:latest
container_name: bridgehead-ccp-ovis-backend
restart: always
user: root
working_dir: /app
environment:
APOLLO_PORT: ${APOLLO_PORT:-4001}
CREDOS_PORT: ${CREDOS_PORT:-4000}
CORS_ORIGIN: ${OVIS_CORS_ORIGIN:-*}
DB: ${DB:-onc_test}
ADRESS: ${ADRESS:-mongodb://mongo:27017}
depends_on:
- mongo
- fhir-transformer
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:${APOLLO_PORT:-4001}/health"]
interval: 5s
timeout: 3s
retries: 5
start_period: 10s
entrypoint: >
sh -c "
while [ ! -f /shared/omock.json ]; do
echo 'Waiting for omock.json...'
sleep 5
done;
mkdir -p ./prep &&
cp /shared/omock.json ./prep/omock.json &&
node ./mgDB/prep/preprocessor.mjs &&
echo 'Processing complete' &&
exec node --watch index.js"
labels:
- "traefik.enable=true"
- "traefik.http.routers.ovis-backend.rule=Host(`${HOST:-localhost}`) && PathPrefix(`/graphql`)"
- "traefik.http.routers.ovis-backend.tls=true"
- "traefik.http.routers.ovis-backend.middlewares=${OVIS_AUTH_MIDDLEWARE:-traefik-forward-auth}"
- "traefik.http.routers.ovis-backend-ccp.rule=PathPrefix(`/ccp-ovis/graphql`)"
- "traefik.http.routers.ovis-backend-ccp.tls=true"
- "traefik.http.middlewares.ovis-backend-ccp-strip.stripprefix.prefixes=/ccp-ovis"
- "traefik.http.routers.ovis-backend-ccp.middlewares=ovis-backend-ccp-strip,${OVIS_AUTH_MIDDLEWARE:-traefik-forward-auth}"
- "traefik.http.services.ovis-backend.loadbalancer.server.port=${APOLLO_PORT:-4001}"
volumes:
- /var/cache/bridgehead/ccp/ovis/shared_data:/shared
frontend:
image: docker.verbis.dkfz.de/ovis/adt-mon-gql-frontend:latest
container_name: bridgehead-ccp-ovis-frontend
restart: always
environment:
PUBLIC_GRAPHQL_URL: https://${HOST:-localhost}/ccp-ovis/graphql
PUBLIC_LOGIN_ENABLED: "false"
depends_on:
backend:
condition: service_healthy
labels:
- "traefik.enable=true"
- "traefik.http.routers.ovis-frontend.tls=true"
- "traefik.http.routers.ovis-frontend.rule=Host(`${HOST:-localhost}`)"
- "traefik.http.routers.ovis-frontend.middlewares=${OVIS_AUTH_MIDDLEWARE:-traefik-forward-auth}"
- "traefik.http.routers.ovis-frontend-ccp.rule=PathPrefix(`/ccp-ovis`)"
- "traefik.http.routers.ovis-frontend-ccp.tls=true"
- "traefik.http.middlewares.ovis-frontend-ccp-strip.stripprefix.prefixes=/ccp-ovis"
- "traefik.http.routers.ovis-frontend-ccp.middlewares=ovis-frontend-ccp-strip,${OVIS_AUTH_MIDDLEWARE:-traefik-forward-auth}"
- "traefik.http.services.ovis-frontend.loadbalancer.server.port=5173"