콘텐츠로 이동

Dify RAG 시스템 구축 계획

작성일: 2026-04-18
상태: 계획 수립 완료


목표: 다중 사용자 문서 관리 + RAG 검색 시스템 구축

요구사항:

  • ✅ 웹 기반 UI (다중 사용자)
  • ✅ 역할 기반 접근 제어 (RBAC)
  • ✅ 사용자별 파일 업로드
  • ✅ 버전 관리 (Git/SVN 방식)
  • ✅ RAG 검색 (질문 → 문서 검색 → 답변)

선택한 솔루션: Dify (디파이)


┌─────────────────────────────────────────────────────┐
│ 맥미니 (게이트웨이 + Dify Web UI 프록시) │
│ - TailscaleServe: https://ps-m4pro.tail437af5.ts.net │
│ - 사용자 접근 포인트 │
│ - OpenClaw 게이트웨이 │
└─────────────────────────────────────────────────────┘
│ (Tailscale 경유)
┌───────────────────┴───────────────────┐
│ 메인컴 (Dify Core + 인덱싱) │
│ - Docker Compose 로 Dify 전체 구동 │
│ - PostgreSQL (DB) │
│ - Redis (캐시) │
│ - Weaviate (벡터 DB) │
│ - Dify API + Worker │
│ - 나스 마운트: /mnt/minicity (Y:) │
│ - Ollama 연동 (임베딩 + LLM) │
└───────────────────────────────────────┘

컨테이너역할자원
PostgreSQL관계형 DB1 GB RAM
Redis캐시/큐512 MB RAM
Weaviate벡터 DB2-4 GB RAM
Dify APIAPI 서버1 GB RAM
Dify Web웹 UI512 MB RAM
Dify Worker백그라운드 작업1 GB RAM
Sandbox코드 실행512 MB RAM

총 예상 RAM: 6-8 GB
총 예상 CPU: 2-4 코어
저장 공간: 10-20 GB (벡터 DB 포함)


  • WSL 에 나스 마운트 (/mnt/minicity ← Y: 드라이브)
  • Docker 설치 확인
  • Ollama 설치 확인 (이미 됨 ✅)
  • Dify Docker Compose 다운로드
  • 환경 설정 (.env 수정)
    • 벡터 DB: Weaviate 또는 Chroma
    • LLM: Ollama 연동
    • 임베딩 모델: nomic-embed-text
  • Docker Compose 로 컨테이너 시작
  • 초기 관리자 계정 설정 (웹 UI, 1 회성)
  • Dify 에서 Ollama 프로바이더 설정
  • 임베딩 모델 다운로드 (nomic-embed-text)
  • LLM 모델 확인 (qwen3.5:cloud 등)
  • 나스 경로 연결: /mnt/minicity/Backup_data/
  • Dify Knowledge Base 생성
  • 문서 업로드 (PDF, PPT, Excel 지원)
  • 자동 인덱싱 파이프라인 설정
  • Git 저장소 연동 (선택사항)
  • 또는 Dify 내장 버전 관리 사용
  • 문서 변경 이력 추적
  • 다중 사용자 계정 생성
  • 역할 기반 권한 설정 (Admin, Editor, Viewer)
  • 워크스페이스 분리 (팀별/프로젝트별)
  • Dify API 를 OpenClaw 에서 호출
  • 질문 → Dify 검색 → 답변 파이프라인
  • 자동화 워크플로우 구축
  • Tailscale Serve 로 Dify Web UI 노출
  • HTTPS 인증서 설정 (선택사항)
  • 방화벽 규칙 설정

상황웹 UIAPI
초기 설치/설정✅ 필요 (1 회, 5 분)
일상 운영
문서 업로드
사용자 관리
질문/검색
Terminal window
# 문서 업로드
POST /api/files/upload
# 지식베이스 생성
POST /api/datasets
# 문서 인덱싱
POST /api/datasets/{dataset_id}/document/create_by_file
# 질문 (RAG 검색)
POST /api/chat-messages
# 사용자 관리
POST /api/users

작업주체방법
Windows 명령어 (net use, wsl —shutdown)미미아빠PowerShell 에서 직접 실행
Linux 명령어 (설치, 설정, Docker)AISSH 로 mainpc-wsl 접속하여 실행
파일 작성 (설정, 스크립트)AIwrite/edit 도구 사용
브라우저 UI 조작 (Dify 초기설정)미미아빠웹에서 직접 클릭 (1 회성)
인증정보 입력미미아빠직접 입력

문제해결책
WSL 나스 마운트 실패SMB 직접 마운트 또는 WebDAV 우회
Docker 리소스 부족컨테이너 메모리 제한 설정
인덱싱 속도 느림배치 처리 + 백그라운드 작업
버전 관리 복잡Dify 내장 버전 관리 우선 사용
다중 사용자 충돌워크스페이스 분리

단계소요 시간비고
1 단계: 환경 준비30 분나스 마운트
2 단계: Dify 설치1 시간Docker Compose
3 단계: Ollama 연동30 분모델 다운로드
4 단계: 문서 인덱싱2-4 시간문서량에 따라
5 단계: 버전 관리1 시간선택사항
6 단계: 사용자 관리30 분계정 생성
7 단계: OpenClaw 연동1 시간API 연동
8 단계: 외부 접근30 분Tailscale Serve

총 예상 시간: 6-8 시간


항목
게이트웨이맥미니 (PS-M4pro)
Dify 서버메인컴 (PS-I14700K WSL)
나스주영나스 (Y: 드라이브)
나스 경로http://minicity.kr:5005/Backup_data
나스 IDpsbot
나스 PW@@Mini3388
Tailscale 게이트웨이https://ps-m4pro.tail437af5.ts.net
노드ID상태
mainpc-node4448cee08fe91d1dedfaa52466b5282cb424c16e22ffd9ec2fc773c17e9dc206✅ paired · connected
MH-3900xc622d0082eb04895238519fc1ffd10fd08d2055e096aecf218aa3a1337c5c56d✅ paired · connected
  • glm-5.1
  • minimax-m2.5
  • qwen3.5:cloud
  • gemma4:31b
  • nomic-embed-text (임베딩용, 다운로드 필요)

즉시 시작할 항목:

  1. 메인컴 WSL 에 나스 마운트 완료 (Y: → /mnt/minicity)
  2. Docker 설치 확인 (docker --version)
  3. Dify Docker Compose 다운로드

진행 여부: ⏳ 대기 중