37cac72085
- Docker/K8s 배포 설정을 pipeline-backend/pipeline-front로 통일 - 네임스페이스, 서비스, PVC 등 k8s 리소스명 pipeline-* 로 변경 - AI 에이전트 관리 기능 추가 (에이전트, 그룹, 프로바이더, 대화, API 키, 지식베이스) - 장비 연결 관리 기능 추가 (PLC/Modbus/OPC-UA/MQTT) - 배치 스케줄러에 AI agent/device collection/crawling 타입 추가 - 배치 편집 UI 개선 (6가지 실행 방식 지원) - 회사별 페이지(COMPANY_*) 제거 및 AdminPageRenderer 최적화 - 메뉴 재구성: 장비 연결 관리 시스템관리로 이동, 에이전트 오케스트레이션으로 개명 - ai-assistant 디렉토리 제거 (backend-node로 통합) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
77 lines
2.4 KiB
YAML
77 lines
2.4 KiB
YAML
version: "3.8"
|
|
|
|
services:
|
|
# Node.js 백엔드
|
|
pipeline-backend:
|
|
build:
|
|
context: ../../backend-node
|
|
dockerfile: ../docker/deploy/backend.Dockerfile
|
|
container_name: pipeline-backend
|
|
restart: always
|
|
environment:
|
|
NODE_ENV: production
|
|
PORT: "3001"
|
|
HOST: 0.0.0.0
|
|
DATABASE_URL: ${DATABASE_URL}
|
|
JWT_SECRET: ${JWT_SECRET}
|
|
JWT_EXPIRES_IN: ${JWT_EXPIRES_IN:-24h}
|
|
CORS_ORIGIN: ${CORS_ORIGIN:-https://v1.vexplor.com,https://api.vexplor.com}
|
|
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:-}
|
|
SMART_FACTORY_API_KEY_COMPANY_10: ${SMART_FACTORY_API_KEY_COMPANY_10:-}
|
|
SMART_FACTORY_API_KEY_COMPANY_9: ${SMART_FACTORY_API_KEY_COMPANY_9:-}
|
|
volumes:
|
|
- backend_uploads:/app/uploads
|
|
- backend_data:/app/data
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.backend.rule=Host(`api.vexplor.com`)
|
|
- traefik.http.routers.backend.entrypoints=websecure,web
|
|
- traefik.http.routers.backend.tls=true
|
|
- traefik.http.routers.backend.tls.certresolver=le
|
|
- traefik.http.services.backend.loadbalancer.server.port=3001
|
|
|
|
# Next.js 프론트엔드
|
|
pipeline-front:
|
|
build:
|
|
context: ../../frontend
|
|
dockerfile: ../docker/deploy/frontend.Dockerfile
|
|
args:
|
|
- NEXT_PUBLIC_API_URL=https://api.vexplor.com/api
|
|
- SERVER_API_URL=http://pipeline-backend:3001
|
|
container_name: pipeline-front
|
|
restart: always
|
|
environment:
|
|
NODE_ENV: production
|
|
NEXT_PUBLIC_API_URL: https://api.vexplor.com/api
|
|
SERVER_API_URL: "http://pipeline-backend:3001"
|
|
NEXT_TELEMETRY_DISABLED: "1"
|
|
PORT: "3000"
|
|
HOSTNAME: 0.0.0.0
|
|
volumes:
|
|
- frontend_data:/app/data
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.frontend.rule=Host(`v1.vexplor.com`)
|
|
- traefik.http.routers.frontend.entrypoints=websecure,web
|
|
- traefik.http.routers.frontend.tls=true
|
|
- traefik.http.routers.frontend.tls.certresolver=le
|
|
- traefik.http.services.frontend.loadbalancer.server.port=3000
|
|
|
|
volumes:
|
|
backend_uploads:
|
|
driver: local
|
|
backend_data:
|
|
driver: local
|
|
frontend_data:
|
|
driver: local
|
|
|
|
networks:
|
|
default:
|
|
name: toktork_server_default
|
|
external: true
|