From 2c9baf8f959d1747d08809266f1883bc9e9719c1 Mon Sep 17 00:00:00 2001 From: laurentbarontini Date: Sun, 28 Dec 2025 17:30:25 +0100 Subject: [PATCH] First commit --- docker-compose.yml | 176 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 176 insertions(+) create mode 100644 docker-compose.yml diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..87d9de0 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,176 @@ +services: + 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" + + tryton-dev: + image: tradon/tradon + container_name: tradon-dev + depends_on: + - postgres-dev + environment: + DB_HOSTNAME: postgres-dev + DB_PASSWORD: dsproject + volumes: + - tradon-sao-dev:/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 + ports: + - "80:80" + - "443:443" + - "8008:8008" + - "8444:8444" + - "8445:8445" + + 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: \ No newline at end of file