# full-path: docker-compose.yaml # Description: Docker Compose file using Postgres + Node 20 with Corepack PNPM. services: db: image: postgres:15-alpine container_name: myapp_db env_file: - .env environment: POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_DB: ${POSTGRES_DB} ports: - "${POSTGRES_HOST_PORT}:${POSTGRES_PORT}" volumes: - my-db-volume:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"] interval: 5s timeout: 5s retries: 5 backend: build: context: . dockerfile: Dockerfile container_name: myapp_backend depends_on: db: condition: service_healthy env_file: - .env ports: - "${HOST_PORT}:${PORT}" command: > sh -c " pnpm prisma migrate deploy && pnpm run start " volumes: my-db-volume: