ProcessCenter 온프레미스 배포
지원 프로파일
| 프로파일 | 데이터베이스 | 적합한 사용 사례 |
|---|---|---|
mysql | MySQL 8.4+ | 기존 MySQL 기반 포탈 단독 운영 또는 기존 고객 환경 |
postgresql | PostgreSQL 16+ 및 pgvector | RAG, RLS, 사내 임베딩·LLM endpoint를 포함한 운영 |
PORTAL_IDENTITY_MODE=STANDALONE이면 ProcessCenter가 자체 users, organizations, 역할·권한 데이터를 사용한다. DIRECTORY 모드에서는 PORTAL_CONSOLE_ORIGIN, PORTAL_CONSOLE_API_KEY, PORTAL_CONSOLE_PORTAL_ID를 환경 변수로 설정한다. API key와 JWT secret은 UI나 DB에 저장하지 말고 비밀 관리 시스템 또는 배포 환경 변수로만 주입한다.
설치
.env.onprem.example을.env.onprem으로 복사하고 모든 placeholder를 변경한다.- MySQL 또는 PostgreSQL 중 하나만 선택한다.
- PostgreSQL과 RAG를 쓸 경우 DBA가 먼저 대상 데이터베이스에서
CREATE EXTENSION IF NOT EXISTS vector;를 실행한다. extension 생성에는 일반 애플리케이션 계정보다 높은 권한이 필요할 수 있다. - 다음 명령으로 시작한다.
bash
# MySQL
sudo docker compose --env-file .env.onprem -f docker-compose.onprem.yml --profile mysql up -d --build
# PostgreSQL + pgvector
sudo docker compose --env-file .env.onprem -f docker-compose.onprem.yml --profile postgresql up -d --build컨테이너 시작 시 선택한 DATABASE_DIALECT에 맞는 Drizzle migration이 적용된다. PostgreSQL RAG SQL은 초기 설치 시 DBA 절차에 따라 drizzle/0001_private_rag.sql을 적용한다.
운영 점검
| 항목 | 확인 내용 |
|---|---|
| DB | DATABASE_DIALECT와 DATABASE_URL이 동일한 DB profile을 가리키는지 확인 |
| PortalConsole | 중앙관리 모드일 때 HTTPS origin과 API key가 배포 환경에 있는지 확인 |
| 스토리지 | Cloudflare R2 또는 내부 S3 호환 endpoint의 key를 비밀값으로 주입 |
| Private AI | PRIVATE_EMBEDDING_URL, PRIVATE_LLM_URL이 사내 네트워크에서 도달 가능한지 확인 |
| 보안 | .env.onprem을 Git에 추가하지 않고 secret rotation 절차를 운영 |