commit 52ebba437916642340711523b7da81581de4e33e Author: manus-admin Date: Sun May 31 21:56:29 2026 +0200 Initial commit - import depuis serveur de recette diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fbc77b6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +node_modules/ +.env +*.log +dist/ +build/ +.DS_Store diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..4f5127f --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,59 @@ +services: + app: + build: + context: ./src + dockerfile: Dockerfile + container_name: veille-reglementaire + restart: unless-stopped + environment: + - NODE_ENV=production + - PORT=3000 + - DATABASE_URL=mysql://veille_user:VeilleDB2026Secure!@veille-db:3306/veille_reglementaire + - JWT_SECRET=veille-reglementaire-jwt-secret-2026-recette + - VITE_APP_ID=veille-reglementaire + depends_on: + veille-db: + condition: service_healthy + networks: + - web + - veille-internal + labels: + - "traefik.enable=true" + # Route HTTPS via veille.recette.santinova-soft.org + - "traefik.http.routers.veille-secure.rule=Host(`veille.recette.santinova-soft.org`)" + - "traefik.http.routers.veille-secure.entrypoints=websecure" + - "traefik.http.routers.veille-secure.tls=true" + - "traefik.http.routers.veille-secure.tls.certresolver=letsencrypt" + - "traefik.http.routers.veille-secure.service=veille-svc" + # Service + - "traefik.http.services.veille-svc.loadbalancer.server.port=3000" + - "traefik.docker.network=web" + + veille-db: + image: mysql:8.0 + container_name: veille-db + restart: unless-stopped + environment: + - MYSQL_ROOT_PASSWORD=VeilleRootDB2026! + - MYSQL_DATABASE=veille_reglementaire + - MYSQL_USER=veille_user + - MYSQL_PASSWORD=VeilleDB2026Secure! + volumes: + - veille-db-data:/var/lib/mysql + networks: + - veille-internal + healthcheck: + test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-pVeilleRootDB2026!"] + interval: 10s + timeout: 5s + retries: 5 + start_period: 30s + +volumes: + veille-db-data: + +networks: + web: + external: true + veille-internal: + driver: bridge diff --git a/src b/src new file mode 160000 index 0000000..6fde1aa --- /dev/null +++ b/src @@ -0,0 +1 @@ +Subproject commit 6fde1aa00f43e59b74fb99af1cd3a7101aa65578