안녕하세요!
이번 포스팅에서는 시놀로지 NAS의 Docker를 활용하여 Kavita 만화/소설 서버를 설치하는 방법을 소개하려고 합니다.
Kavita는 가볍고 빠른 성능의 만화 및 소설 관리 서버로, 직관적인 인터페이스를 통해 대규모 컬렉션을 쉽게 관리하고 읽을 수 있는 플랫폼입니다.
특히 시놀로지 NAS와 Docker 환경에서 Kavita를 실행하면, 언제 어디서나 웹을 통해 본인의 만화나 소설 컬렉션을 열람할 수 있는 개인 라이브러리를 구축할 수 있습니다.
Portainer
Docker 컨테이너를 보다 쉽게 관리하기 위해 Portainer를 사용할 것입니다.
Docker에서 직접 레지스트리 이미지를 다운로드하여 설치할 수도 있지만, Portainer를 활용하고자 한다면 이전 포스팅을 참고하시면 도움이 될 것입니다.

먼저, Docker 경로에 kavita 폴더를 생성하고, 그 안에 config와 data 폴더를 생성합니다.
data 폴더 안에 실제로 만화/소설 파일을 넣으면 됩니다.

필자의 경우 이런 식으로 돼 있습니다.

이후 Portainer에 접속하여, 좌측의 Stacks를 클릭하고 우측 상단의 Add stack을 클릭합니다.

Name 란에 이름을 입력하고, Web editor 부분에 다음 내용을 붙여 넣습니다.
version: "3.9"
services:
kavita:
image: jvmilazz0/kavita:latest
container_name: Kavita
hostname: kavita
mem_limit: 4g
cpu_shares: 768
security_opt:
- no-new-privileges:true
ports:
- 5471:5000
volumes:
- /volume1/docker/kavita/config:/kavita/config:rw
- /volume1/docker/kavita/data:/manga:rw
restart: on-failure:5
0.8.0 버전부터 volume 혹은 chapter가 0과 음수를 지원하게 바뀌었으므로
가능하다면 최신 버전으로 설치합니다.

입력이 끝났다면, 하단의 Deploy the stack 버튼을 클릭합니다.
설치가 끝났다면, 내부 IP:5471로 접속할 수 있습니다.
Kavita 초기 설정

접속해서 관리자 계정의 아이디와 이메일, 비밀번호를 설정하고,
생성한 관리자 계정을 통해 로그인합니다.

우측 상단의 설정 버튼을 클릭합니다.

Libraries 탭에서 Add Library 버튼을 클릭합니다.

이름과 타입을 설정하고 Next를 클릭합니다.

Browse for Media Folders를 클릭합니다.

data 폴더 안에 넣은 만화/소설 경로를 선택합니다.
해당 포스팅에서는 LNovel (KR)을 선택하도록 하겠습니다.

Share 버튼을 클릭하지 않고, 좌측의 Advanced 항목을 클릭합니다.
Cover 항목은 패스하여도 좋습니다.

토글을 모두 켜고 Save를 클릭합니다.
모든 종류의 서적은 Archive 형식 (즉 압축 파일)으로 업로드하는 것이 좋습니다.
압축 파일이 아닐 경우, 1권에 해당하는 서적에 간혹 버그가 발생합니다.

해당 라이브러리에 서적이 잘 나타나는지 확인합니다.
다른 경로의 폴더도 같은 방법으로 추가할 수 있습니다.
Volume Sort
Kavita 위키에 따라, 각 서적의 volume 이름은 다음과 같이 설정되어야 합니다.


필자의 경우 위와 같이 통일하였습니다.
모바일 뷰어
해당 뷰어에 대한 설명은 Android만 가능합니다.

먼저 Kavita에서 닉네임을 클릭하여 Settings에 진입합니다.


3rd Party Clients를 클릭하고, OPDS URL 항목 우측에 있는 복사 버튼을 클릭합니다.
복사된 내용을 스마트폰으로 옮깁니다.

mihon.app 링크에 접속하여 Download 버튼을 클릭합니다.

계속하여 Mihon을 다운로드하고 스마트폰에 설치합니다.

초기 화면이 보인다면, 하단의 찾아보기를 클릭합니다.

상단의 확장 앱을 클릭하고, 우측 상단의 …을 클릭합니다.
필자는 이미 등록이 돼 있어 리스트가 보이지만, 실제로는 아무것도 보이지 않을 것입니다.

확장 앱 저장소를 클릭합니다.

하단의 추가 버튼을 클릭합니다.

아래의 내용을 복사하여 붙여 넣고 추가를 클릭합니다.
https://raw.githubusercontent.com/keiyoushi/extensions/repo/index.min.json

kavita를 검색하여 클릭한 뒤 설치합니다.
필자는 이미 설치돼 있고, 현재 업데이트가 중단된 상태라 과정을 캡처할 수가 없는 점 양해 부탁드립니다.

Kavita (1) (ALL)의 토글을 켭니다.
다른 Kavita도 사용할 예정이라면 복수의 토글을 켜서 사용하여도 좋습니다.

소스 탭에서 Kavita를 클릭하여 실행합니다.

우측 상단의 …를 클릭하여 설정에 진입합니다.

OPDS url을 클릭하여, 조금 전에 복사했던 OPDS URL을 붙여 넣고 확인을 클릭합니다.

Mihon을 종료한 뒤 다시 실행하고, Kavita (1)을 클릭한다면 정상적으로 보일 것입니다.
Kavita 설치와 모바일 뷰어 설정까지 따라오시느라 수고 많으셨습니다.
이제 시놀로지 NAS를 활용해 언제 어디서나 만화와 소설을 편리하게 즐길 수 있는 개인 서버를 구축하셨습니다.
앞으로도 유익한 포스팅을 작성할 예정이니, 많은 관심 부탁드립니다.
감사합니다!