Files
tk-factory-services/.env.example
Hyungi Ahn 6495b8af32 feat: SSO 쿠키 인증 통합 + 서브도메인 라우팅 아키텍처
- Path-based 라우팅을 서브도메인 기반으로 전환
  (tkfb/tkreport/tkqc.technicalkorea.net)
- 3개 시스템 프론트엔드에 SSO 쿠키 인증 통합
  (domain=.technicalkorea.net, localStorage 폴백)
- Gateway: 포털+로그인+System1 프록시, 쿠키 SSO 설정
- System 1: 토큰키 통일, nginx.conf 생성, 신고페이지 리다이렉트
- System 2: api-base.js/app-init.js 생성, getSSOToken() 통합
- System 3: TokenManager 쿠키 지원, 중앙 로그인 리다이렉트
- docker-compose.yml에 cloudflared 서비스 추가
- DEPLOY-GUIDE.md 배포 가이드 작성

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 18:41:44 +09:00

95 lines
3.8 KiB
Plaintext

# ===================================================================
# TK Factory Services - 통합 환경 변수 설정
# ===================================================================
# 사용법: cp .env.example .env && vi .env
# 주의: .env 파일은 절대 Git에 커밋하지 마세요!
# ===================================================================
# -------------------------------------------------------------------
# SSO 인증 (공통)
# -------------------------------------------------------------------
SSO_JWT_SECRET=change_this_to_random_string_min_32_chars
SSO_JWT_EXPIRES_IN=7d
SSO_JWT_REFRESH_SECRET=change_this_to_another_random_string_min_32_chars
SSO_JWT_REFRESH_EXPIRES_IN=30d
# -------------------------------------------------------------------
# MariaDB (System 1 + System 2 공유)
# -------------------------------------------------------------------
MYSQL_ROOT_PASSWORD=change_this_root_password_min_12_chars
MYSQL_DATABASE=hyungi
MYSQL_USER=hyungi_user
MYSQL_PASSWORD=change_this_user_password_min_12_chars
# -------------------------------------------------------------------
# PostgreSQL (System 3 전용)
# -------------------------------------------------------------------
POSTGRES_USER=mproject
POSTGRES_PASSWORD=change_this_postgres_password
POSTGRES_DB=mproject
# -------------------------------------------------------------------
# System 1 - 공장관리 API
# -------------------------------------------------------------------
SYSTEM1_NODE_ENV=production
SYSTEM1_API_PORT=3005
SYSTEM1_DB_HOST=mariadb
SYSTEM1_DB_PORT=3306
# -------------------------------------------------------------------
# System 1 - FastAPI Bridge
# -------------------------------------------------------------------
SYSTEM1_FASTAPI_BASE_URL=http://system1-api:3005
# -------------------------------------------------------------------
# System 2 - 신고 API
# -------------------------------------------------------------------
SYSTEM2_NODE_ENV=production
SYSTEM2_API_PORT=3005
SYSTEM2_DB_HOST=mariadb
SYSTEM2_DB_PORT=3306
# -------------------------------------------------------------------
# System 3 - 부적합관리 API
# -------------------------------------------------------------------
SYSTEM3_DATABASE_URL=postgresql://mproject:change_this_postgres_password@postgres:5432/mproject
SYSTEM3_ADMIN_USERNAME=hyungi
SYSTEM3_ADMIN_PASSWORD=change_this_admin_password
# -------------------------------------------------------------------
# M-Project 연동 (System 2 → System 3)
# -------------------------------------------------------------------
M_PROJECT_API_URL=http://system3-api:8000
M_PROJECT_USERNAME=api_service
M_PROJECT_PASSWORD=change_this_api_service_password
M_PROJECT_DEFAULT_PROJECT_ID=1
# -------------------------------------------------------------------
# Redis
# -------------------------------------------------------------------
REDIS_HOST=redis
REDIS_PORT=6379
# -------------------------------------------------------------------
# 외부 서비스 (선택)
# -------------------------------------------------------------------
WEATHER_API_URL=https://apis.data.go.kr/1360000/VilageFcstInfoService_2.0
WEATHER_API_KEY=
# -------------------------------------------------------------------
# phpMyAdmin
# -------------------------------------------------------------------
PMA_HOST=mariadb
PMA_USER=root
PMA_PASSWORD=change_this_root_password_min_12_chars
UPLOAD_LIMIT=50M
# -------------------------------------------------------------------
# Cloudflare Tunnel
# -------------------------------------------------------------------
# Cloudflare Zero Trust 대시보드에서 터널 설정 필요:
# tkfb.technicalkorea.net → http://tk-gateway:80
# tkreport.technicalkorea.net → http://tk-system2-web:80
# tkqc.technicalkorea.net → http://tk-system3-web:80
CLOUDFLARE_TUNNEL_TOKEN=your_tunnel_token_here