52 lines
2.0 KiB
YAML
52 lines
2.0 KiB
YAML
services:
|
||
dashboard:
|
||
build:
|
||
# Les sources actives sont versionnées sous src/. Le contexte racine
|
||
# pouvait réutiliser d’anciens dossiers backend/frontend restés sur l’hôte.
|
||
context: ./src
|
||
dockerfile: Dockerfile
|
||
container_name: manus-dashboard
|
||
# Le dashboard doit repartir seul après un arrêt anormal du processus.
|
||
restart: always
|
||
mem_limit: 512m
|
||
environment:
|
||
- NODE_ENV=production
|
||
- DASHBOARD_ENV=recette
|
||
- PORT=3001
|
||
- JWT_SECRET=manus-dashboard-jwt-secret-2026-recette
|
||
- ADMIN_USERNAME=adminItinova
|
||
- ADMIN_PASSWORD=Itinova69!
|
||
- GITEA_URL=https://git.recette.santinova-soft.org
|
||
- GITEA_USERNAME=manus-admin
|
||
- GITEA_PASSWORD=ManusGitea2026!
|
||
- GITEA_TOKEN=1e0b01c361a91d5512e13c78053ac82a66e19427
|
||
- GITEA_RECETTE_URL=http://gitea:3000
|
||
- GITEA_PASSWORD_PROD=ManusGitea2026!
|
||
- APPS_BASE_PATH=/opt/manus-deploy/apps
|
||
- INFRA_BASE_PATH=/opt/manus-deploy/infrastructure
|
||
# Contrôles bornés et dédoublonnés par healthcheck.js.
|
||
- HEALTH_CHECK_INTERVAL=60000
|
||
volumes:
|
||
- /var/run/docker.sock:/var/run/docker.sock
|
||
- /opt/manus-deploy:/opt/manus-deploy
|
||
extra_hosts:
|
||
- "git.santinova-soft.org:180.149.196.138"
|
||
networks:
|
||
- web
|
||
labels:
|
||
- "traefik.enable=true"
|
||
# Route HTTPS via dashboard.recette.santinova-soft.org
|
||
- "traefik.http.routers.manus-dashboard.rule=Host(`dashboard.recette.santinova-soft.org`)"
|
||
- "traefik.http.routers.manus-dashboard.entrypoints=websecure"
|
||
- "traefik.http.routers.manus-dashboard.tls=true"
|
||
- "traefik.http.routers.manus-dashboard.tls.certresolver=letsencrypt"
|
||
- "traefik.http.routers.manus-dashboard.service=manus-dashboard-svc"
|
||
- "traefik.http.routers.manus-dashboard.priority=100"
|
||
# Service
|
||
- "traefik.http.services.manus-dashboard-svc.loadbalancer.server.port=3001"
|
||
- "traefik.docker.network=web"
|
||
|
||
networks:
|
||
web:
|
||
external: true
|