services: back: image: node:22-alpine3.20 # restart: always ports: - 9229:9229 networks: internal: aliases: - back entrypoint: '/app/start.sh' working_dir: '/app' volumes: - './back:/app' - 'back-node-modules:/app/node_modules' - './.env:/.env.global:ro' front: build: context: front dockerfile: Dockerfile.dev networks: internal: aliases: - front volumes: - './front:/app' - 'front-node-modules:/app/node_modules' db: image: postgres:17-alpine volumes: - 'db-data:/var/lib/postgresql' environment: POSTGRES_PASSWORD: '${DB_PASS}' POSTGRES_USER: '${DB_USER}' POSTGRES_DB: '${DB_NAME}' ports: - 5432:5432 networks: internal: aliases: - '${DB_HOST}' server: image: caddy:2.8.4-alpine ports: - 80:80 volumes: - './config/caddy:/etc/caddy:ro' - './volatile/caddy/log:/var/log/caddy' networks: internal: networks: internal: volumes: 'back-node-modules': 'front-node-modules': 'db-data':