- 목적: EBMS/BEMS legacy application을 Docker Compose 기반 로컬 데모와 배포 흐름으로 운영
- 주요 구성: parent repository + application submodules + Windows GUI launcher
- 최근 Codex 맥락: BEMS login fix, frontend/backend routing, backend-served static asset drift, submodule-aware publish flow
- 로컬 경로:
C:\Users\saint\PycharmProjects\Legacy_Demo_Deploy
- 주요 문서:
DEMO_LAUNCHER.md, DEPLOYMENT.md
- 주요 실행 파일:
dist\LegacyDemoLauncher.exe
- Docker Desktop for Windows 설치 및 실행
LegacyDemoLauncher.exe 실행
Health Check
Start Demo
- 브라우저에서 접속
- EBMS:
http://localhost:1234
- BEMS:
http://localhost:1123
Start Demo: docker compose up -d
Stop Demo: docker compose down
Restart: stop/start
Rebuild & Start: image rebuild 후 시작
Git Pull & Rebuild: git pull --ff-only, submodule update, rebuild
Repair & Restart: orphan container 정리 후 rebuild/start
Backup Data: db_data와 EBMS static upload folders 백업
Load Data Backup: DB/static upload backup 복구
Submodule push
-> repository_dispatch to parent repository
-> parent updates matching submodule pointer
-> self-hosted runner deploys parent repository
-> server runs docker compose up -d --build
- Parent repository가 실제 Docker Compose 배포 기준이다.
- 각 application은 Git submodule로 관리되며, 배포 시 parent gitlink pointer를 함께 갱신해야 한다.
Git Pull & Rebuild는 tracked local changes가 있으면 rebuild 전에 멈춘다.
- Self-hosted runner는 사전에 구성된 SSH key와
known_hosts를 전제로 한다.
- DB restore는 실패 시 기존
db_data와 static upload folders를 rollback하도록 설계되어 있다.
- BEMS login 문제는 API response shape, frontend cookie/routing, backend-served stale asset이 함께 얽힐 수 있다.
1124에서 1123으로 서비스 경로가 바뀌는 흐름을 확인해야 한다.
- Submodule 변경 후에는 parent repository pointer update까지 끝내야 실제 배포 단위가 닫힌다.
- Date: 2026-06-17
- Verified by: Codex
- Evidence:
DEMO_LAUNCHER.md, DEPLOYMENT.md, prior Codex memory summaries