Skip to content

Latest commit

 

History

History
61 lines (41 loc) · 3.83 KB

File metadata and controls

61 lines (41 loc) · 3.83 KB

🚀 Kavita ➡️ BookOasis 완벽 마이그레이션 가이드

더 가볍고, 더 빠르며, 반응형 뷰어 디자인의 극치를 선사하는 BookOasis로 오신 것을 환영합니다!
본 가이드는 기존 Kavita에 쌓여 있던 수만 권의 도서 정보, 수동 매핑 표지(WebP 고화질 변환 포함), 독서 진척도를 단 1분 만에 완벽히 복제하여 BookOasis로 부드럽게 이사하는 방법을 설명합니다.


💡 왜 BookOasis로 넘어가야 할까요?

비교 항목 🐘 Kavita ⚡ BookOasis (추천)
백엔드 리소스 .NET(C#) 가상머신 구동으로 무거운 기본 메모리 점유율 초경량 Python Flask 기반 아키텍처로 최소 수준 메모리 구동
대용량 DB 성능 10만 권 돌파 시 복잡한 6~7개 테이블 조인으로 SQLite 렉 유발 컬럼 평탄화 및 쉼표 구분 매핑으로 고속 단일 SELECT 보장
동시성 처리 스캔 중 웹 로드 먹통 현상 빈번 발생 DB WAL 모드 & 50ms 스캐너 Throttling으로 중단 없는 웹 서비스
표지 용량 최적화 무거운 JPG/PNG 커버가 공간을 그대로 낭비 고화질 유지 및 용량을 대폭 줄인 표준 WebP 자동 인코딩 적용
경로 유연성 파일 서버 이동 시 경로가 깨지면 표지도 일괄 유실 대화형 CLI를 통한 경로 일괄 치환 및 물리 파일 해시 리네이밍 완벽 지원

🛠️ 준비 사항

마이그레이터를 실행하기 위해 프로젝트 루트 디렉토리에서 간단히 의존 라이브러리를 설치해 줍니다:

pip install -r mig_requestment.txt

📖 마이그레이션 단계별 가이드

Step 1 & 2: 모드 선택 및 Kavita 설정

터미널에서 python .\tools\migrator.py 명령어를 통해 대화형 도구를 실행합니다.

Step 1 & 2 설정 화면

  1. [Step 1] 원하는 이관 모드를 선택합니다. Kavita에서 넘어오는 경우 1 (Kavita ➡️ BookOasis 이관)을 입력 후 엔터를 누릅니다.
  2. [Step 2] Kavita가 구동되던 DB 경로(kavita.db)를 입력합니다. (기본값이 잡혀 있는 경우 엔터만 누르면 됩니다.)
  3. Kavita의 커버 디렉토리 경로를 확인하고 맞으면 엔터, 수정하려면 올바른 경로를 입력합니다.

Step 3 & 4: BookOasis 타겟 설정 및 이관 시작

북오아시스 서버의 목적지 경로를 지정하고 실시간 이관 처리를 시작합니다.

Step 3 & 4 설정 및 이관 실행

  1. [Step 3] BookOasis 루트 경로를 확인 후 엔터를 누릅니다.
  2. [Step 4] 이제 마이그레이션이 가동되며 11만 권이 넘는 대량의 데이터도 실시간 콘솔 진행률을 표시하며 눈 깜짝할 사이에 쾌속 수집 및 이관됩니다.

    💡 이 과정에서 Kavita DB에 등록되었던 저자, 출판사, 발매일, 장르, 태그, 줄거리 정보들이 한 땀 한 땀 병합 가공되어 북오아시스 DB 규격에 매칭됩니다. 동시에 디바이스에 존재하던 표지 이미지들을 자동 검지하여 고압축 고화질 WebP 이미지로 즉시 변환하여 저장합니다.


Step 5: 완료 리포트

이관 프로세스가 안전하게 완결되면 최종 리포트 결과가 요약 출력됩니다.

최종 완료 리포트

  • 이관 성공 도서 권수: 111,429 권
  • WebP 변환 성공 표지: 디바이스에 존재하던 표지들이 규격에 맞게 변환된 수치 표시

이제 북오아시스 웹 대시보드에 접속하시면, 카비타에서 읽던 페이지 정보와 작가/태그/장르 필터링 기능이 초고속 뷰어 디자인 안에서 그대로 살아 움직이는 놀라운 경험을 하실 수 있습니다!