services: db: image: postgres:17-alpine restart: always environment: - POSTGRES_DB=TTGF-Homepage - POSTGRES_USER=TTGFHPDB - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} ports: - "5432:5432" networks: - net-TTGFHP healthcheck: test: ["CMD-SHELL", "pg_isready -U TTGFHPDB -d TTGF-Homepage"] interval: 5s timeout: 2s retries: 20 volumes: - TTGF_DB_data:/var/lib/postgresql/data command: postgres -c listen_addresses='*' logging: options: max-size: "10m" max-file: "3" base_server: build: context: . dockerfile: Dockerfile target: base depends_on: db: condition: service_healthy networks: - net-TTGFHP webserver: extends: service: base_server build: target: release ports: - "3000:3000" env_file: - .env.prod profiles: ["release"] dev_server: extends: service: base_server build: target: dev ports: - "5173:5173" develop: watch: - action: sync path: . target: /usr/src/webserver ignore: - node_modules - action: rebuild path: package.json profiles: ["dev"] networks: net-TTGFHP: volumes: TTGF_DB_data: