version: "3.9" services: server: build: context: . dockerfile: apps/server/Dockerfile working_dir: /app command: sh -c "pnpm install || true && pnpm -C /app/apps/server dev" ports: - "${SERVER_PORT:-3001}:${SERVER_PORT:-3001}" volumes: - ./:/app - /app/node_modules - /app/apps/web/node_modules - /app/apps/server/node_modules - ./data:/app/data environment: - NODE_ENV=development - QBIT_BASE_URL=${QBIT_BASE_URL} - QBIT_USERNAME=${QBIT_USERNAME} - QBIT_PASSWORD=${QBIT_PASSWORD} - APP_USERNAME=${APP_USERNAME} - APP_PASSWORD=${APP_PASSWORD} - JWT_SECRET=${JWT_SECRET} - SERVER_PORT=${SERVER_PORT} - WEB_PORT=${WEB_PORT} - WEB_ORIGIN=${WEB_ORIGIN} - WEB_ALLOWED_ORIGINS=${WEB_ALLOWED_ORIGINS} - POLL_INTERVAL_MS=${POLL_INTERVAL_MS} - ENFORCE_INTERVAL_MS=${ENFORCE_INTERVAL_MS} - DEFAULT_DELAY_MS=${DEFAULT_DELAY_MS} - MAX_LOOP_LIMIT=${MAX_LOOP_LIMIT} web: build: context: . dockerfile: apps/web/Dockerfile working_dir: /app command: sh -c "pnpm install || true && pnpm -C /app/apps/web dev" ports: - "${WEB_PORT:-5173}:${WEB_PORT:-5173}" volumes: - ./:/app - /app/node_modules environment: - NODE_ENV=development - VITE_API_BASE=http://${APP_HOST:-localhost}:${SERVER_PORT:-3001} - WEB_PORT=${WEB_PORT} - WEB_ORIGIN=http://${APP_HOST:-localhost}:${WEB_PORT:-5173} - WEB_ALLOWED_HOSTS=${WEB_ALLOWED_HOSTS}