Watcharr
셀프 호스팅 방식의 영화, 애니메이션 및 게임 트래커로, 상태 관리와 평점을 지원합니다.
스마트 다운로드
프로젝트 홈페이지 방문
아직 설치 프로그램이 없습니다 — 소스 저장소로 이동하세요
나만의 영상 체크인 노트를 직접 만들어 보세요. 영화, 드라마, 애니메이션, 게임을 지원합니다.
주요 기능
- 셀프 호스팅으로 데이터를 완전히 자신이 관리
- 영화, TV 드라마, 애니메이션, 게임 네 가지 콘텐츠 유형 지원
- "시청 완료/시청 중/계획/보류" 등의 상태 설정 및 평점 부여 가능
- 탐색 페이지와 사용자 프로필 페이지 내장, 다크 테마 지원
- Docker로 원클릭 배포, docker-compose.yml 포함
할 수 없는 것
- •기본적으로 TMDB와 IGDB를 사용하여 메타데이터를 가져오며, API Key는 직접 신청해야 합니다. 처음 실행할 때 초기 사용자 생성을 완료해야 합니다. 게임 지원을 사용하려면 IGDB를 추가로 설정해야 하며, 그렇지 않으면 영상 콘텐츠만 표시됩니다.
사용 사례
- Trakt 등 서드파티 미디어 관리 서비스를 대체하고 시청 기록 프라이버시 보호
- 가족이나 소규모 팀과 애니메이션 챙겨보기, 드라마 정주행 등 영상 시청 진행 상황 공유
- 게이머가 게임 진행 상황도 함께 기록 (IGDB 설정 필요)
상세 설명
Watcharr는 쉽게 셀프호스팅할 수 있는 미디어 추적 도구로, 이미 시청했거나 현재 시청 중이거나 시청 예정인 영화, TV 프로그램, 애니메이션을 관리할 수 있으며, IGDB 설정을 통해 비디오 게임도 추적할 수 있습니다. Go와 Svelte로 구축되어 모던한 반응형 인터페이스를 제공하며, 다크 테마, 사용자 홈페이지, 발견 페이지, Docker 원클릭 배포를 지원합니다. 커뮤니티에서는 Kodi 플러그인과 같은 확장도 제공합니다. Trakt 같은 제3자 서비스와 달리 완전히 셀프호스팅되므로 데이터 프라이버시를 직접 제어할 수 있습니다.
문제 해결 & FAQ (2)
문제 해결Docker가 포트 3080을 매핑하는데도 Nginx가 Watcharr로 리버스 프록시할 때 왜 시간 초과가 발생하나요?
Watcharr는 컨테이너 내부의 3000 포트에서 수신 대기하며, 3080이 아닙니다. Docker 포트 매핑에서 형식은 HOST:CONTAINER이므로 호스트 포트 3080을 컨테이너 포트 3000에 매핑하세요:
services:
watcharr:
image: ghcr.io/sbondco/watcharr:latest
container_name: watcharr
ports:
- "3080:3000"
volumes:
- ./data:/data
restart: unless-stopped
변경 사항을 적용하세요:
docker compose up -d
Nginx가 호스트에서 실행되는 경우, 게시된 호스트 포트로 프록시하세요:
location / {
proxy_pass http://127.0.0.1:3080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
Nginx가 컨테이너에서 실행되는 경우, 두 컨테이너를 동일한 Docker 네트워크에 배치하고 컨테이너 포트로 직접 프록시하세요:
proxy_pass http://watcharr:3000;
다음으로 내부 리스너를 확인하세요:
docker logs watcharr
Listening on http://0.0.0.0:3000이 표시되어야 합니다. 3080:3080을 사용하면 Watcharr 컨테이너 내부의 3080 포트에서 아무것도 수신 대기하지 않기 때문에 리버스 프록시가 시간 초과됩니다.
문제 해결Trakt 가져오기 중 'database is locked' 오류로 인해 Watcharr에서 로그아웃되는 이유는 무엇인가요?
이 문제는 Trakt importer가 전체 시청 기록을 SQLite 데이터베이스에 한꺼번에 기록하면서 데이터베이스를 잠그기 때문에 발생하며, 이로 인해 인증 쿼리가 실패합니다(401 'not authorized' 오류, 강제 로그아웃). 해결 방법: Watcharr를 최신 버전으로 업데이트하세요. 최신 버전은 SQLite를 WAL (Write-Ahead Logging) 모드로 실행하여 가져오기 중에도 동시 읽기를 허용합니다. 이전 버전에서의 임시 해결 방법: 진행률 팝업이 멈춘 것처럼 보여도 가져오기는 백그라운드에서 계속 진행되므로, 완전히 끝날 때까지 기다리세요(기록이 많으면 몇 시간이 걸릴 수 있습니다). 그런 다음 데이터베이스 쓰기가 완료되면 다시 로그인하세요.
태그
시작하기
소프트웨어 설치
다운로드한 설치 프로그램을 더블 클릭하고 안내에 따르세요
1단계: Docker 및 Docker Compose 설치
2단계: 프로젝트 루트 디렉터리의 docker-compose.yml 파일 다운로드
3단계: 터미널에서 docker-compose up -d 실행
- 1단계: Docker 및 Docker Compose 설치
- 2단계: 프로젝트 루트 디렉터리의 docker-compose.yml 파일 다운로드
- 3단계: 터미널에서 docker-compose up -d 실행
체크섬 없음
이 프로젝트는 GitHub Release 페이지에 SHA-256 체크섬을 게시하지 않았습니다
SHA256 체크섬
체크섬 없음
GitHub Releases에서 직접 다운로드하고 파일 무결성을 직접 확인하세요
이 플랫폼의 모든 SHA-256 체크섬은 프로젝트의 공식 GitHub Release 페이지에서 추출되었으며, 어떠한 변경도 없습니다. GitHub Releases 페이지에서 직접 검증할 수 있습니다.
오픈소스 투명성
GitHub 소스 보기제거 정보
컨테이너를 중지하고(docker-compose down) 해당 데이터 볼륨을 삭제하여(docker volume rm watcharr_data) 모든 데이터를 지웁니다.
추가 의존성 없음
다운로드 후 바로 사용 가능. 추가 런타임이 필요하지 않습니다.
문제 발생? 아래 FAQ 확인
2 FAQs