services: hugo: image: nginx:alpine container_name: hugo-site restart: unless-stopped volumes: - /var/www/os-site:/usr/share/nginx/html:ro # ton build Hugo expose: - "80" vaultwarden: image: vaultwarden/server:latest container_name: vaultwarden restart: unless-stopped expose: - "80" volumes: - ./vaultwarden-data:/data environment: DOMAIN: "https://srv413259.hstgr.cloud:8445" ADMIN_TOKEN: "ONPEUTSELASSERDETOUTSAUFDECOMPRENDRE" SIGNUPS_ALLOWED: "true" WEBSOCKET_ENABLED: "true" tradon-metabase: image: metabase/metabase:latest container_name: tradon-metabase depends_on: - metabase-db expose: - "3000" environment: MB_DB_TYPE: postgres MB_DB_DBNAME: metabase MB_DB_PORT: 5432 MB_DB_USER: metabase MB_DB_PASS: dsproject MB_DB_HOST: metabase-db restart: unless-stopped metabase-db: image: postgres:16 container_name: metabase-postgres restart: unless-stopped environment: POSTGRES_DB: metabase POSTGRES_USER: metabase POSTGRES_PASSWORD: dsproject volumes: - /root/tradon/metabase:/var/lib/postgresql/data ports: - "5434:5432" gitea: image: gitea/gitea:latest container_name: gitea restart: always environment: - USER_UID=1000 - USER_GID=1000 - GITEA__server__ROOT_URL=https://srv413259.hstgr.cloud:8444/ - GITEA__server__SSH_PORT=2222 volumes: - gitea-data:/data expose: - "3000" ports: - "2222:22" postgres: image: tradon/postgres container_name: tradon-postgres environment: POSTGRES_DB: tradon POSTGRES_PASSWORD: dsproject PGDATA: /var/lib/postgresql/data/pgdata volumes: - tradon-database:/var/lib/postgresql/data ports: - "5432:5432" postgres-dev: image: tradon/postgres container_name: tradon-postgres-dev environment: POSTGRES_DB: tradon POSTGRES_PASSWORD: dsproject PGDATA: /var/lib/postgresql/data/pgdata volumes: - tradon-database-dev:/var/lib/postgresql/data ports: - "5433:5432" tryton: image: tradon/tradon container_name: tradon depends_on: - postgres environment: DB_HOSTNAME: postgres DB_PASSWORD: dsproject volumes: - /root/tradon/source/sao:/var/lib/trytond - /root/tradon/source/prod:/usr/local/lib/python3.11/dist-packages/trytond - ./tryton/trytond.conf:/etc/trytond.conf expose: - "8000" cron: image: tradon/tradon container_name: tradon-cron depends_on: - postgres environment: DB_HOSTNAME: postgres DB_PASSWORD: dsproject volumes: - /root/tradon/source/prod:/usr/local/lib/python3.11/dist-packages/trytond command: ["trytond-cron", "-d", "tradon"] tryton-dev: image: tradon/tradon container_name: tradon-dev depends_on: - postgres-dev environment: DB_HOSTNAME: postgres-dev DB_PASSWORD: dsproject volumes: - /root/tradon/source/sao:/var/lib/trytond - /root/tradon/source/dev:/usr/local/lib/python3.11/dist-packages/trytond - ./tryton/trytond-dev.conf:/etc/trytond.conf expose: - "8008" automation-service: build: ./automation container_name: automation-service depends_on: - tryton expose: - "8006" volumes: - ./automation:/app metabase: image: metabase/metabase:latest container_name: metabase expose: - "3000" volumes: - ./metabase-data:/metabase.db nginx: image: nginx:latest container_name: tradon-nginx depends_on: - tryton - metabase volumes: - ./nginx/default.conf:/etc/nginx/conf.d/default.conf:ro - ./nginx/letsencrypt:/var/www/letsencrypt - ./nginx/certs:/etc/letsencrypt - ./tryton_test_react/dist:/var/www/dashboard - /var/www/os-site:/var/www/os-site ports: - "80:80" - "81:81" - "443:443" - "8008:8008" - "8444:8444" - "8445:8445" - "8446:8446" certbot: image: certbot/certbot depends_on: - nginx volumes: - ./nginx/letsencrypt:/var/www/letsencrypt - ./nginx/certs:/etc/letsencrypt entrypoint: > sh -c "while ! nc -z tradon-nginx 80; do sleep 1; done; certbot certonly --webroot -w /var/www/letsencrypt --email admin@tondomaine.com --agree-tos --no-eff-email -d srv413259.hstgr.cloud -d srv413259.hstgr.cloud" volumes: tradon-database: external: true tradon-sao: external: true tradon-modules: external: true tradon-database-dev: external: true tradon-sao-dev: external: true tradon-modules-dev: external: true metabase-data: gitea-data: