이름 대신, 작품으로.
영화와 시리즈를 포스터로 살펴보고, 시즌과 회차를 찾아보세요. 보던 작품은 이어보기에서 다시 시작합니다.
YOUR LIBRARY. YOUR ROUX.
내 NAS의 영화와 시리즈를 iPhone에서.
오늘 볼 작품을 고르고, 이어 보고,
좋았던 순간을 나만의 카드로 모으세요.
Synology NAS · iPhone · 소유자 승인으로 함께 보기
A PLACE FOR YOUR FILMS
THE ROUX EXPERIENCE
Roux는 영상을 제공하지 않습니다.
가지고 있는 작품을 더 잘 즐기는 방법을 만듭니다.
영화와 시리즈를 포스터로 살펴보고, 시즌과 회차를 찾아보세요. 보던 작품은 이어보기에서 다시 시작합니다.
시간과 기분에 맞는 작품을 골라보세요. 마음에 드는 작품은 재생하고, 다음 후보도 부담 없이 만납니다.
감상으로 획득하는 Watch Card. 별점과 한줄평을 남기고, 영화와 시리즈 컬렉션을 나만의 Deck에 모으세요.
LET’S GET YOU STARTED
NAS를 설치하는 사람과 초대받은 사람의
시작 과정은 다릅니다. 내 상황을 선택하세요.
PC에서는 NAS를 준비하고,
iPhone에서는 Roux를 연결합니다.
DSM 7.2 이상, Container Manager를 지원하는 x86-64 NAS가 대상입니다. ARM 모델은 아직 지원하지 않습니다. 신규 설치·기존 데이터 보존·복구의 실제 NAS 검증을 진행 중입니다.
0.11.0-rc.5 사전 배포 · 설정과 안내만 담긴 ZIP입니다. 로그인이나 Git 조작은 필요하지 않습니다. 변경 내역·체크섬·라이선스
설명 확인 0 / 5
확인 표시는 이 브라우저에 저장됩니다. 앱과 동기화되지 않으며 NAS 상태를 자동 검사하지 않습니다.
DSM 7.2 이상, x86-64 CPU와 Container Manager 사용 가능 여부를 확인하세요. DSM을 설정할 수 있는 PC, 보유한 영상과 iOS 17 이상인 iPhone을 준비합니다.
공개된 ZIP을 File Station의 /volume1/docker/roux에 풀고 data 폴더를 만드세요. Container Manager → 프로젝트 → 생성에서 이 폴더와 docker-compose.yml을 선택합니다. 완성된 이미지를 받으므로 NAS에서 빌드하지 않습니다.
기본값은 /volume1/media-library입니다. 새 공유 폴더를 만들거나 YAML에서 /media:ro 왼쪽만 기존 영상 폴더의 실제 경로로 바꾸세요. 읽기 전용 :ro는 유지합니다. 영상 폴더를 data로 지정하지 마세요.
서버를 중지하고 data와 기존 YAML을 백업하세요. 기존 미디어·데이터 경로, 포트·개인 키 설정을 유지하고 두 서비스의 image만 같은 새 버전으로 바꿉니다. build 항목은 제거합니다. 설치 폴더를 새 ZIP으로 덮어쓰지 마세요. 실패하면 이전 이미지와 업데이트 전 data를 함께 복원합니다.
roux-data-init 종료 코드 0과 roux-server의 healthy 상태를 확인하세요.
NAS와 같은 Wi-Fi에서 Roux의 로컬 네트워크 접근을 허용하세요. 이미 설치했어요에서 발견된 서버를 선택하거나 주소를 입력합니다. 기기 승인 후 소셜 계정과 서버 소유권을 연결하세요.
서버 발견, 기기 승인과 소유권 연결은 별도 과정입니다.
영상 목록을 확인하세요. NAS 소유자가 개인 TMDB 키를 한 번 등록하면 포스터·작품 정보를 수집합니다. 초대받은 분은 설정할 필요가 없습니다. 나중에 연결해도 파일 목록과 재생은 이용할 수 있습니다. 포스터·작품 정보 연결 안내 · 외부 자막 연결
영상 하나를 열어 재생과 앞뒤 탐색을 확인하세요. 집 안 재생 후 필요한 경우 외부 HTTPS 접속과 가족 초대를 설정합니다. 공유기에서 DSM 관리 포트나 Roux 포트를 바로 공개하지 마세요.
집 밖 접속은 선택 단계처음에는 같은 Wi-Fi에서
연결하는 것이 좋습니다.
DSM의 Container Manager에서 Roux가 실행 중인지 확인하세요. iPhone에서는 설정한 네트워크에 연결하고 Roux의 로컬 네트워크 접근을 허용합니다.
앱 시작 화면에서 서버를 찾거나 주소를 직접 입력하세요. 여러 서버가 보이면 내 NAS의 서버인지 확인한 뒤 선택합니다.
앱이 요청하는 기기 승인 또는 계정 연결을 진행합니다. 소유자로 다른 사람을 초대하려면 소셜 계정과 NAS 소유권 연결도 완료해야 합니다.
라이브러리와 이어보기 기록이 보이는지 확인하세요. 이전 서버를 업데이트했다면 폴더를 새로 만들거나 데이터를 지우지 말고 기존 서버 데이터를 유지해야 합니다.
앱과 소셜 계정, 소유자가 알려준
서버 주소와 참여 코드가 필요합니다.
참여 승인 기능을 지원하는 앱·서버와 로그인 서비스가 필요합니다. 요청 화면이 보이지 않으면 서버 소유자에게 업데이트 여부를 확인해 주세요.
서버 소유자에게 접속할 주소와 참여 코드를 받으세요. 집 밖에서 이용한다면 외부에서 연결되는 HTTPS 주소가 필요합니다.
앱에서 주소와 코드를 입력해 서버를 확인하고, Apple 또는 Google 계정으로 로그인한 뒤 참여를 요청합니다. 코드만으로 라이브러리가 열리지는 않습니다.
소유자가 요청자의 계정을 확인하고 허용할 라이브러리와 원격 접속 권한을 선택합니다. 참여자는 앱의 승인 확인을 눌러 결과를 확인하세요.
이 서버에 연결로 시작합니다. 시청 기록과 감상 기록은 사용자별로 구분되며, 소유자는 이후에도 참여자를 내보낼 수 있습니다.
SHARED LIBRARY. PERSONAL EXPERIENCE.
공유할 라이브러리와
참여할 사람을 직접 정하세요.
SERVER UPDATE · 2026.09.24
현재 배포: 0.11.0-rc.5
OpenSubtitles 계정 인증·자막 다운로드·연결 확인을 추가했습니다. 기존 라이브러리·기록·Watch Card·슬랩은 유지합니다.
DSM 7.2+ · x86-64 · 사전 배포 · 설치 구성 개정 2
새 설치·데이터 보존 업데이트·복구의 실제 NAS 검증은 아직 완료되지 않았습니다. 변경 내역·체크섬·라이선스
roux-data-init과 roux-server의 image를 아래 값으로 변경하고 각 서비스의 build 항목은 제거합니다. 프로젝트 YAML을 저장·배포해 새 이미지를 내려받고 컨테이너를 다시 만드세요. 기존 컨테이너 재시작만으로는 업데이트되지 않습니다.ghcr.io/kyhoonx/roux-server:0.11.0-rc.5-5135a08a1e9f@sha256:094cea4ac0313281128dffc5aac9c8bdeae7c263d4f0a1c38a8cd457a6e78390/health에서 version 0.11.0-rc.5, buildId 5135a08a1e9f와 기존 serverId를 확인하세요. 앱에서 라이브러리·기록·카드를 확인하고 재생·탐색합니다.개인용 업데이트 ZIP을 따로 받았다면 그 ZIP의 README_NAS.md를 따르세요. 개인용 소스 빌드 절차와 공개 이미지 설치 절차를 섞지 않습니다. 기존 개인 키는 유지합니다. 새 설치는 키 없이 시작하고, 소유자가 원할 때 개인 TMDB 키를 연결할 수 있습니다.
OPTIONAL · NAS OWNER
NAS 소유자가 개인 TMDB 키를 등록하면 서버가 작품 정보를 직접 가져옵니다. 초대받은 분은 키를 준비할 필요가 없습니다.
나중에 연결해도 괜찮습니다. 기본 설치 파일은 키 없이 시작하며, 파일 목록과 영상 재생부터 사용할 수 있습니다. 소셜 로그인과 TMDB 설정은 별개입니다.
TMDB 계정 설정 → API에서 이용 목적을 사실대로 작성하고 조건에 동의해 신청하세요. 발급 화면의 긴 API Read Access Token을 사용합니다. 짧은 API Key (v3 auth)나 로그인 비밀번호가 아닙니다.
패키지 센터에서 Text Editor를 설치합니다. File Station에서 Roux 프로젝트 밖에 /volume1/docker/roux-secrets를 만들고, Text Editor에서 Token 값 한 줄만 tmdb_read_token 파일로 저장하세요. .txt, 따옴표, Bearer 는 붙이지 않습니다.
관리자 외 일반 사용자·게스트에게 이 폴더를 공유하지 않습니다. 서버 실행 사용자 UID 65532가 읽을 수 있어야 하며 Everyone 전체 권한을 주거나 서버를 root로 실행하지 마세요. 키는 자동 암호화되지 않습니다. 저장 후 편집기를 닫고 클립보드를 비우세요. 키를 앱·홈페이지·YAML·문의·스크린샷에 넣지 않습니다.
키가 준비됐다면 ZIP의 docker-compose.tmdb.yml을 선택하세요. 나중에 연결하려면 docker-compose.yml을 선택합니다. 두 파일은 각각 전체 설정이므로 함께 적용하지 않습니다. 선택한 파일의 영상 폴더와 secret 파일 경로를 실제 NAS 경로에 맞추세요. OpenSubtitles 키나 빈 파일은 필요하지 않습니다.
프로젝트를 중지하고 YAML과 data를 백업합니다. 새 YAML 전체로 덮어쓰지 말고 아래 부분을 기존 설정에 합치세요. 기존 ROUX_METADATA_MODE는 direct로 바꾸고 ROUX_PUBLIC_METADATA_URL이 있으면 제거합니다. 이미 있는 secret 항목은 중복 추가하지 않습니다. image·미디어/data 경로·포트·다른 secret은 유지합니다.
services:
roux-server:
environment:
ROUX_METADATA_MODE: "direct"
secrets:
- tmdb_read_token
secrets:
tmdb_read_token:
file: "/volume1/docker/roux-secrets/tmdb_read_token"적용·배포로 컨테이너를 다시 생성하세요. 단순 재시작은 바뀐 키 파일이 적용되지 않을 수 있습니다. 정리(Clean)나 데이터 삭제는 하지 않습니다.
서버가 healthy가 되면 앱의 설정 → Synology 설치 및 점검 → 다시 점검을 누르세요. 설정 감지는 키 유효성이나 조회 성공을 뜻하지 않습니다. 라이브러리를 새로고침한 뒤 알려진 작품의 제목·포스터와 재생을 확인하세요. 나중에 키를 연결해도 기존 라이브러리에 작품 정보를 수집합니다.
출시 준비 버전 1.0 빌드 76은 광고 없이 제공합니다. TMDB는 개인 키와 제공자의 이용 조건에 따라 연결합니다. 광고 도입 여부는 별도 이용 조건 확인 후 결정하며, 새 공개 설치·나중에 연결·키 교체의 실제 NAS 검증은 남아 있습니다.
OPTIONAL · NAS OWNER
내장 자막·영상과 같은 폴더의 자막·NAS에 저장된 자막은 계정 없이 사용합니다. 외부 검색과 다운로드가 필요할 때만 소유자가 한 번 연결하세요.
초대받은 분은 설정하지 않습니다. 같은 NAS의 외부 자막 요청은 소유자 계정의 다운로드 한도를 사용합니다.
OpenSubtitles.com에 가입해 이메일 인증을 마치고, API consumers에서 용도와 이용 조건을 확인하여 키를 발급하세요. 다운로드에는 API 키와 해당 계정의 사용자 이름·비밀번호가 모두 필요합니다. Roux 소셜 로그인과 별개이며, 예전 .org API 키는 사용하지 않습니다.
다운로드 한도와 요금은 OpenSubtitles 계정·API 조건을 확인하세요. Roux가 일정한 무료 횟수를 보장하지 않습니다.
Text Editor로 프로젝트 밖 /volume1/docker/roux-secrets에 opensubtitles_api_key, opensubtitles_username, opensubtitles_password 파일을 만들고 각각 값 한 줄만 저장하세요. .txt나 따옴표를 붙이지 않으며 비밀번호의 공백은 유지합니다.
관리자와 서버 실행 UID 65532만 필요한 접근 권한을 갖도록 제한하세요. 키·비밀번호를 앱·홈페이지·YAML·메일·로그에 입력하지 않습니다. 저장소는 자동 암호화되지 않습니다. 백업도 보호하고 입력 후 편집기를 닫고 클립보드를 비우세요.
새 설치는 docker-compose.subtitles.yml(자막) 또는 docker-compose.tmdb-subtitles.yml(작품 정보와 자막) 하나만 선택하세요. 필요한 secret 파일을 먼저 준비합니다. 기본 설정은 이 파일들 없이 실행됩니다.
기존 설치는 업데이트 안내에 따라 서버를 업데이트하고, YAML·data 백업 후 아래 항목만 병합하세요. 기존 영상/data 경로·포트·TMDB 설정은 유지합니다. 같은 secret 블록을 중복 작성하지 않습니다.
services:
roux-server:
secrets:
- opensubtitles_api_key
- opensubtitles_username
- opensubtitles_password
secrets:
opensubtitles_api_key:
file: "/volume1/docker/roux-secrets/opensubtitles_api_key"
opensubtitles_username:
file: "/volume1/docker/roux-secrets/opensubtitles_username"
opensubtitles_password:
file: "/volume1/docker/roux-secrets/opensubtitles_password"적용·배포하여 컨테이너를 다시 생성하세요. 초기화 서비스에는 secret을 넣지 않습니다. Clean이나 data 삭제는 필요하지 않습니다.
앱의 설정 → Synology 설치 및 점검 → OpenSubtitles 연결 확인에서 계정과 남은 다운로드를 확인합니다. 이 확인은 다운로드 한도를 소비하지 않습니다. 숫자는 확인 시점 기준입니다. 이후 플레이어 자막 메뉴에서 원하는 언어로 검색하고 한 개를 내려받아 적용하세요. 실제 다운로드는 한도를 사용할 수 있습니다. 저장된 자막은 NAS 캐시를 사용합니다.
계정 확인 필요: 키·사용자 이름·비밀번호·이메일 인증을 확인하고 수정 후 컨테이너를 다시 생성합니다. 잘못된 로그인의 반복은 서버가 중단합니다.
한도 소진: OpenSubtitles 계정에서 갱신 시점을 확인하세요. 요청 제한: 최소 1분 기다립니다. 연결 실패: NAS 인터넷·시간 설정을 확인합니다. 시작 실패: secret 경로·파일명·권한을 확인하세요. 서버가 시작되지 않으면 재생도 할 수 없습니다. 나중에 연결하려면 추가한 OpenSubtitles secret 연결만 제거하고 기존 설정으로 다시 배포하세요. 서버가 정상 실행 중인 상태에서 제공자 연결만 실패한 경우에는 기존 자막과 재생을 계속 이용할 수 있습니다.
해제하려면 이 세 secret의 서버 연결만 제거하고 다시 배포합니다. TMDB와 data는 유지합니다. 버전까지 되돌리면 이전 image와 data를 함께 복원하세요. 자세한 양언어 절차는 ZIP의 OPENSUBTITLES_SETUP.md에 있습니다.
자동 검증된 사전 배포 기능입니다. 실제 NAS의 계정 인증·다운로드·초대 사용자 확인은 별도 검증이 필요합니다.
SYNOLOGY · REMOTE ACCESS
집 안에서 첫 재생을 마친 뒤 진행하세요. DSM 7.2 이상에서 DDNS와 HTTPS 리버스 프록시를 사용하는 안내입니다. 메뉴 이름은 DSM 버전에 따라 조금 다를 수 있습니다.
QuickConnect 주소와 참여 코드는 Roux의 인터넷 연결을 만들어 주지 않습니다. Roux에는 별도의 접속 가능한 HTTPS 주소가 필요합니다. NAS 관리자 비밀번호는 공유하지 않습니다.
연결 경로
iPhone → HTTPS 443 → NAS 리버스 프록시 → Roux 8080
같은 Wi-Fi에서 소유자 연결과 영상 재생을 끝내세요. 공유기에서 NAS의 내부 IP를 고정 예약합니다. 공유기의 인터넷(WAN) 주소가 공인 IPv4인지 확인하세요. 사설 주소나 100.64.0.0–100.127.255.255이면 이중 공유기 또는 CGNAT 환경일 수 있습니다. 이 경우 통신사에 공인 IP 가능 여부를 확인하거나 별도로 VPN 연결을 구성해야 합니다. 포트 하나만 열어서는 해결되지 않습니다.
DSM 제어판 → 외부 액세스 → DDNS → 추가에서 서비스 제공자를 Synology로 선택하고 사용 가능한 호스트 이름을 등록합니다. 연결 테스트와 상태가 정상인지 확인하세요. 아래 roux-example.synology.me는 예시이므로 모두 내 주소로 바꿉니다. DDNS는 주소를 연결할 뿐 포트를 열지는 않습니다.
DDNS 등록의 Let’s Encrypt 인증서 옵션 또는 제어판 → 보안 → 인증서 → 추가에서 내 DDNS 주소의 인증서를 발급합니다. 아래 프록시를 만든 뒤 인증서의 설정/구성에서 해당 서비스에 이 인증서를 지정하세요. 기본 인증서 변경은 다른 서비스에도 영향을 줄 수 있습니다.
인증서는 자동 갱신 상태도 확인합니다. 사용자 지정 도메인의 HTTP 인증에는 TCP 80 연결이 필요할 수 있으므로 Synology 인증서 안내를 따르세요. 재생 연결은 HTTPS 443을 사용하며, 인증서 경고를 무시하고 진행하지 않습니다.
제어판 → 로그인 포털 → 고급 → 역방향 프록시(리버스 프록시) → 생성을 엽니다. 이름은 Roux로 지정합니다.
roux-example.synology.me127.0.0.18080은 NAS에 연결한 Roux 포트입니다. 기존 YAML에서 변경했다면 그 포트를 사용하세요. 사용자 지정 요청 헤더에 X-Forwarded-Proto = https를 설정하고 기존 전달 헤더를 유지하세요. Roux가 프록시 접속을 원격 요청으로 판별하는 데 사용합니다. DSM 관리 화면이나 소유자 등록 포트 8081로 연결하지 않습니다.
공유기 관리 화면의 포트 포워딩에서 외부 TCP 443 → NAS 내부 IP의 TCP 443을 등록합니다. DSM 방화벽을 사용 중이면 필요한 클라이언트의 443 접근도 허용하세요. 이미 443을 사용한다면 기존 서비스를 덮어쓰지 말고 호스트 이름별 프록시 규칙을 확인합니다.
공유기가 집 밖의 HTTPS 요청을 NAS로 보내도록 연결하는 설정입니다. 위 단계에서 인증서와 리버스 프록시를 먼저 준비하세요.
192.168.1.100 — 예시를 그대로 복사하지 마세요.NAS IP는 DSM 제어판 → 네트워크 → 네트워크 인터페이스에서 확인합니다. 공유기의 주소 예약(DHCP 예약)으로 이 IP가 바뀌지 않게 해두세요.
저장·적용 후 Wi-Fi를 끄고 확인하세요. 5G/LTE에서 https://roux-example.synology.me/health를 열어 status: ok를 확인한 뒤 앱에서 재생해 보세요. 주소는 내 DDNS로 바꿉니다.
443을 이미 다른 장비가 사용한다면? 기존 규칙을 덮어쓰지 마세요. 별도 포트를 쓰려면 외부·내부 포트와 DSM 프록시의 소스 포트를 모두 9443으로 맞추고, 방화벽도 해당 포트를 허용합니다. 앱 주소와 확인 주소에 :9443을 붙이세요. 예: https://roux-example.synology.me:9443. 프록시 대상인 Roux 8080은 그대로입니다.
시간 초과가 나면 NAS IP·포트·방화벽을 먼저 확인하세요. 이중 공유기나 CGNAT 환경은 아래 ‘연결이 안 될 때’를 참고하세요. 사용을 중단하려면 추가한 Roux 규칙만 비활성화합니다.
Roux 8080·8081과 DSM 관리 5000·5001을 직접 외부에 공개하거나 DMZ를 켜지 마세요. 이 안내는 설정 방법만 설명하며 포트를 자동으로 열지 않습니다.
Roux의 서버 주소 입력란에 https://roux-example.synology.me를 입력해 연결합니다. /health나 /webman, 내부 포트 번호는 앱 주소에 붙이지 않습니다. 참여자는 소유자에게 이 HTTPS 주소와 참여 코드를 받아 요청합니다. 소유자는 참여자에게 허용할 라이브러리와 집 밖 원격 접속 권한을 설정해야 합니다.
Safari에서 https://roux-example.synology.me/health가 인증서 경고 없이 열리는지 확인하고, Roux에서 영상 재생과 앞뒤 탐색을 해보세요. 집 안 Wi-Fi 테스트만으로는 외부 접속 성공을 확인할 수 없습니다. 테스트 뒤 Wi-Fi를 다시 켭니다.
A LITTLE HELP
네. 현재 출시 버전은 광고 없이 감상 조건을 충족하면 Watch Card를 획득합니다. 별점과 한줄평은 작품·시즌 상세의 감상 기록에서 작성합니다. 카드의 리뷰 라벨은 이미 소유한 슬랩에만 표시되며, 이번 버전에서는 새 슬랩을 제공하지 않습니다. 기존 카드·슬랩과 감상 기록은 유지됩니다.
아니요. Roux는 소유한 미디어를 NAS에서 정리하고 재생하는 앱입니다. 영상은 직접 준비하거나, 서버 소유자에게 라이브러리 접근 권한을 받아야 합니다.
주소 형식 오류는 http 또는 https와 호스트·포트를 확인한 뒤 다시 입력하세요. 응답이 없으면 같은 Wi-Fi, 서버 health, 방화벽과 로컬 네트워크 권한을 확인합니다. 연결되지만 접근이 거절되면 소유자에게 기기 승인·라이브러리 권한을 확인한 뒤 재시도하세요. 데이터를 지우거나 재설치할 필요는 없습니다.
소유자의 개인 TMDB 키 설정과 NAS 인터넷을 확인하세요. 설정 감지만으로 조회 성공이 보장되지는 않습니다. 키 교체 후에는 컨테이너를 다시 생성합니다. 파일 목록과 재생은 유지되므로 data를 지우지 마세요. 연결·오류 복구 안내를 확인하세요.
NAS와 iPhone이 같은 Wi-Fi에 있는지, Roux 서버가 실행 중인지, iPhone의 로컬 네트워크 접근이 허용됐는지 확인하세요. 게스트 Wi-Fi는 기기 간 통신을 막을 수 있습니다. 자동 검색이 안 되면 앱에서 서버 주소를 직접 입력해 보세요.
먼저 주소에 접속할 수 있는지 확인하세요. 집 안 주소는 집 밖에서 열리지 않을 수 있습니다. 참여 코드는 발급 후 48시간이 지나거나 소유자가 변경하면 사용할 수 없습니다. 최신 코드를 받아 다시 요청하고, 승인 대기 중이라면 소유자에게 확인해 주세요.
소유자가 허용한 라이브러리만 표시됩니다. 라이브러리 접근 권한과 집 밖에서 이용할 수 있는 원격 권한은 각각 다르므로 소유자에게 설정을 확인해 주세요.
원본 영상은 NAS에 있고, 시청·감상 기록도 서버에서 관리합니다. 소셜 로그인과 계정 연결에는 Roux 중앙 계정 서비스가 사용되며, 작품 정보·이미지·외부 자막에는 별도 제공자가 관여합니다. 모든 데이터가 NAS에만 저장되는 구조는 아닙니다.
기존 데이터 폴더를 보존하는 업데이트를 전제로 합니다. 업데이트 전 서버 데이터와 설정을 백업하고 해당 버전의 안내를 따라 주세요. 이전 버전으로 되돌릴 때는 호환되는 데이터 백업도 함께 복원해야 합니다.