bridgehead/ccp/modules/dnpm-node-compose.yml

89 lines
2.9 KiB
YAML
Raw Normal View History

2023-11-03 08:33:16 +01:00
version: "3.7"
services:
2024-11-13 18:15:35 +01:00
dnpm-mysql:
image: mysql:latest
healthcheck:
test: [ "CMD", "mysqladmin" ,"ping", "-h", "localhost" ]
interval: 3s
timeout: 5s
retries: 5
2023-11-03 08:33:16 +01:00
environment:
2024-11-13 18:15:35 +01:00
MYSQL_ROOT_HOST: "%"
MYSQL_ROOT_PASSWORD: ${DNPM_MYSQL_ROOT_PASSWORD}
volumes:
- dnpm-mysql:/var/lib/mysql
dnpm-authup:
image: authup/authup:latest
container_name: bridgehead-dnpm-authup
2023-11-03 08:33:16 +01:00
volumes:
2024-11-13 18:15:35 +01:00
- dnpm-authup:/usr/src/app/writable
depends_on:
dnpm-mysql:
condition: service_healthy
command: server/core start
environment:
- PUBLIC_URL=https://${HOST}/auth/
- AUTHORIZE_REDIRECT_URL=https://${HOST}
- ROBOT_ADMIN_ENABLED=true
- ROBOT_ADMIN_SECRET=${DNPM_AUTHUP_SECRET}
- ROBOT_ADMIN_SECRET_RESET=true
- DB_TYPE=mysql
- DB_HOST=dnpm-mysql
- DB_USERNAME=root
- DB_PASSWORD=${DNPM_MYSQL_ROOT_PASSWORD}
- DB_DATABASE=auth
2023-11-03 08:33:16 +01:00
labels:
- "traefik.enable=true"
2024-11-13 18:15:35 +01:00
- "traefik.http.middlewares.authup-strip.stripprefix.prefixes=/auth"
- "traefik.http.routers.dnpm-auth.middlewares=authup-strip"
- "traefik.http.routers.dnpm-auth.rule=PathPrefix(`/auth`)"
- "traefik.http.services.dnpm-auth.loadbalancer.server.port=3000"
- "traefik.http.routers.dnpm-auth.tls=true"
2023-11-03 08:33:16 +01:00
2024-11-13 18:15:35 +01:00
dnpm-portal:
image: ghcr.io/kohlbacherlab/dnpm-dip-portal:latest
container_name: bridgehead-dnpm-portal
2023-11-03 08:33:16 +01:00
environment:
2024-11-13 18:15:35 +01:00
- NUXT_API_URL=http://dnpm-backend:9000/
- NUXT_PUBLIC_API_URL=https://${HOST}/api/
- NUXT_AUTHUP_URL=http://dnpm-authup:3000/
- NUXT_PUBLIC_AUTHUP_URL=https://${HOST}/auth/
2023-11-03 08:33:16 +01:00
labels:
- "traefik.enable=true"
2024-11-13 18:15:35 +01:00
- "traefik.http.routers.dnpm-frontend.rule=PathPrefix(`/`)"
- "traefik.http.services.dnpm-frontend.loadbalancer.server.port=3000"
- "traefik.http.routers.dnpm-frontend.tls=true"
dnpm-backend:
container_name: bridgehead-dnpm-backend
image: ghcr.io/kohlbacherlab/dnpm-dip-backend:latest
environment:
- LOCAL_SITE=${ZPM_SITE}:${SITE_ID} # Format: {Site-ID}:{Site-name}, e.g. UKT:Tübingen
- RD_RANDOM_DATA=${DNPM_SYNTH_NUM:--1}
- MTB_RANDOM_DATA=${DNPM_SYNTH_NUM:--1}
- HATEOAS_HOST=https://${HOST}
2024-11-15 13:46:40 +01:00
- CONNECTOR_TYPE=broker
2024-11-13 18:15:35 +01:00
- AUTHUP_URL=robot://system:${DNPM_AUTHUP_SECRET}@http://dnpm-authup:3000
volumes:
- /etc/bridgehead/dnpm/config:/dnpm_config
- dnpm-backend-data:/dnpm_data
depends_on:
dnpm-authup:
condition: service_healthy
labels:
- "traefik.enable=true"
- "traefik.http.routers.dnpm-backend.rule=PathPrefix(`/api`)"
- "traefik.http.services.dnpm-backend.loadbalancer.server.port=9000"
- "traefik.http.routers.dnpm-backend.tls=true"
landing:
labels:
- "traefik.http.routers.landing.rule=PathPrefix(`/landing`)"
volumes:
dnpm-authup:
dnpm-mysql:
dnpm-backend-data: