services: db: image: postgres:16-alpine restart: unless-stopped environment: POSTGRES_DB: nest_db POSTGRES_USER: nest_user POSTGRES_PASSWORD: nest_password volumes: - db_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U nest_user -d nest_db"] interval: 5s timeout: 5s retries: 5 api: build: ./nest-backend restart: unless-stopped ports: - "${API_HOST_PORT:-3001}:3000" env_file: - ./.env environment: DATABASE_URL: postgresql://nest_user:nest_password@db:5432/nest_db depends_on: db: condition: service_healthy command: > sh -c "npx prisma db push && node dist/index.js" front: build: ./nest-front restart: unless-stopped ports: - "80:80" environment: API_URL: http://api:3000 depends_on: - api intra: build: ./nest-intra restart: unless-stopped ports: - "5174:5174" depends_on: - api volumes: db_data: