콘텐츠로 이동

배포

RAG4U는 두 부분으로 나뉩니다.

  1. 공개 문서 사이트: GitHub Pages에 배포하는 정적 사이트
  2. RAG API/UI: 로컬 또는 사내 서버에서 실행하는 애플리케이션

이 계획에서는 공개 문서 사이트만 GitHub Pages에 배포합니다.

문서 사이트 로컬 실행

source .venv/bin/activate
mkdocs serve

브라우저에서 엽니다.

http://127.0.0.1:8000

macOS에서 Xcode 라이선스 미동의로 watchdog 설치가 막힌 환경이라면 정적 빌드 결과를 직접 서빙합니다.

mkdocs build --strict
python -m http.server 8011 --directory site
http://127.0.0.1:8011

문서 사이트 빌드

mkdocs build --strict

빌드 산출물은 site/ 폴더에 생성되며 git에는 포함하지 않습니다.

GitHub Pages 자동 배포

.github/workflows/docs.yml이 포함되어 있습니다. GitHub repository를 만들고 main 브랜치에 push하면 문서 사이트를 빌드하고 Pages artifact로 배포합니다.

GitHub에서 필요한 설정:

  1. Repository Settings로 이동
  2. Pages 메뉴로 이동
  3. Source를 GitHub Actions로 설정
  4. main 브랜치에 push
  5. Actions 탭에서 Deploy RAG4U Docs workflow 확인

Git 저장소가 아직 없다면

현재 작업 폴더가 Git 저장소가 아니라면 다음 절차가 필요합니다.

git init
git add .
git commit -m "Add RAG4U docs site"
git branch -M main
git remote add origin https://github.com/<OWNER>/<REPO>.git
git push -u origin main

RAG 앱 실행

문서 사이트와 별도로 RAG 앱을 실행합니다.

uvicorn app.api.main:app --host 127.0.0.1 --port 8010
APP_API_BASE_URL=http://127.0.0.1:8010 streamlit run app/ui/streamlit_app.py --server.port 8502

외부 공개 시 주의

실제 RAG API와 Streamlit 앱을 외부에 공개하려면 추가 설계가 필요합니다.

  • 사용자 인증
  • 문서별 권한
  • API rate limit
  • 외부 provider 전송 동의
  • 감사 로그
  • 민감 정보 마스킹
  • HTTPS와 배포 환경 secrets 관리

현재 MVP는 로컬 또는 제한된 사내 검증 환경을 기준으로 합니다.