services:
  # Node.js 백엔드
  plm-backend:
    build:
      context: ../../backend-node
      dockerfile: ../docker/prod/backend.Dockerfile # 운영용 Dockerfile
    container_name: pms-backend-prod
    ports:
      - "8080:8080" # 호스트:컨테이너 포트 매핑
    networks:
      - pms-network
    environment:
      - NODE_ENV=production
      - PORT=8080
      - HOST=0.0.0.0 # 모든 인터페이스에서 바인딩
      - DATABASE_URL=${DATABASE_URL}
      - JWT_SECRET=${JWT_SECRET}
      - JWT_EXPIRES_IN=${JWT_EXPIRES_IN:-24h}
      - CORS_ORIGIN=${CORS_ORIGIN:-http://192.168.0.70:5555,http://39.117.244.52:5555,http://localhost:9771}
      - CORS_CREDENTIALS=true
      - LOG_LEVEL=info
      - ENCRYPTION_KEY=${ENCRYPTION_KEY}
      - KMA_API_KEY=${KMA_API_KEY}
      - ITS_API_KEY=${ITS_API_KEY}
      - EXPRESSWAY_API_KEY=${EXPRESSWAY_API_KEY:-}
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:3001/health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 60s

networks:
  pms-network:
    external: true # 외부에서 생성된 네트워크 사용
