# docker-compose.app.yml # 기본 서비스 정의 (공통 설정) version: "3.8" services: # plm-admin: # build: # context: ./plm-admin # dockerfile: Dockerfile # target: production # container_name: plm-admin # restart: unless-stopped # env_file: # - .env.${NODE_ENV:-development} # ports: # - "${ADMIN_PORT}:3002" # environment: # - NODE_ENV=${NODE_ENV:-development} # volumes: # - ./plm-admin:/app # - /app/node_modules # logging: # driver: "json-file" # options: # max-size: "10m" # max-file: "3" # healthcheck: # test: ["CMD", "curl", "-f", "http://localhost:3000/health"] # interval: 30s # timeout: 10s # retries: 3 # depends_on: # - plm-api plm-app: build: context: ./plm-app dockerfile: Dockerfile target: production container_name: plm-app restart: unless-stopped env_file: - .env.${NODE_ENV:-development} ports: - "${APP_PORT}:3003" environment: - NODE_ENV=${NODE_ENV:-development} volumes: - ./plm-app:/app - /app/node_modules depends_on: - plm-api plm-api: build: context: ./plm-api dockerfile: Dockerfile target: production container_name: plm-api restart: unless-stopped env_file: - .env.${NODE_ENV:-development} ports: - "${API_PORT}:3001" environment: - NODE_ENV=${NODE_ENV:-development} volumes: - ./plm-api:/app - /app/node_modules healthcheck: test: ["CMD", "curl", "-f", "http://localhost:3001/health"] interval: 30s timeout: 10s retries: 3 # plm-realtime-api: # build: # context: ./plm-realtime-api # dockerfile: Dockerfile # target: production # container_name: plm-realtime-api # restart: unless-stopped # env_file: # - .env.${NODE_ENV:-development} # ports: # - "${REALTIME_API_PORT}:3004" # environment: # - NODE_ENV=${NODE_ENV:-development} # volumes: # - ./plm-realtime-api:/app # - /app/node_modules # depends_on: # - plm-api # healthcheck: # test: ["CMD", "curl", "-f", "http://localhost:3004/health"] # interval: 30s # timeout: 10s # retries: 3 # networks: # default: # driver: bridge # internal: # driver: bridge