sahara101/movie-roulette无法决定看什么?Movie Roulette帮助你从Plex、Jellyfin和/或Emby媒体库中随机选择电影,具备电影院海报模式、服务集成和设备控制等功能。
,请使用
network_mode: host而非端口映射。
MacOS非Docker应用请查看此处
参见示例docker-compose.yml获取完整配置选项。
标准模式
电影院海报模式
首页模式
Movie Roulette提供两种配置方式:
设置UI(推荐)
/settings界面环境变量
⚠️ 重要:当通过环境变量配置设置时,它将:
- 优先于UI设置
- 在UI中显示为“由环境变量设置”
- 在设置界面中被锁定/禁用
| 变量 | 描述 | 默认值 | UI替代方案 |
|---|---|---|---|
PLEX_URL | Plex服务器URL | - | ✅ 带测试的设置 |
PLEX_TOKEN | Plex认证令牌 | - | ✅ OAuth流程 |
PLEX_MOVIE_LIBRARIES | 电影库名称 | "Movies" | ✅ 库扫描器 |
JELLYFIN_URL | Jellyfin服务器URL | - | ✅ 设置 |
JELLYFIN_API_KEY | Jellyfin API密钥 | - | ✅ 自动设置 |
JELLYFIN_USER_ID | Jellyfin用户ID | - | ✅ 自动设置 |
EMBY_URL | Emby服务器URL | - | ✅ 设置 |
EMBY_API_KEY | Emby API密钥 | - | ✅ 设置 |
EMBY_USER_ID | Emby用户ID | - | ✅ 设置 |
| 变量 | 描述 | 默认值 | UI替代方案 |
|---|---|---|---|
FLASK_SECRET_KEY | 用于会话cookie签名的安全密钥 | 启动时随机生成 | - |
| 变量 | 描述 | 默认值 | UI替代方案 |
|---|---|---|---|
AUTH_ENABLED | 启用认证 | FALSE | ✅ 设置 |
AUTH_SESSION_LIFETIME | 认证会话时长(秒) | 86400 | ✅ 设置 |
AUTH_PASSKEY_ENABLED | 启用Passkey | FALSE | ✅ 设置 |
AUTH_RELYING_PARTY_ID | Passkeys的域名标识符 | ✅ 设置 | |
AUTH_RELYING_PARTY_ORIGIN | Passkeys的完整基础URL | ✅ 设置 | |
ENABLE_MOVIE_LOGOS | 显示TMDB标题logo | FALSE | ✅ 设置 |
LOAD_MOVIE_ON_START | 直接显示电影还是显示按钮 | TRUE | ✅ 设置 |
DISABLE_SETTINGS | 锁定设置页面 | FALSE | - |
HOMEPAGE_MODE | 首页小部件模式 | FALSE | ✅ 设置 |
TMDB_API_KEY | 自定义TMDb密钥 | 内置密钥 | ✅ 设置 |
USE_LINKS | 显示链接按钮 | TRUE | ✅ 设置 |
USE_FILTER | 显示筛选按钮 | TRUE | ✅ 设置 |
USE_WATCH_BUTTON | 显示观看按钮 | TRUE | ✅ 设置 |
USE_NEXT_BUTTON | 显示下一个按钮 | TRUE | ✅ 设置 |
ENABLE_MOBILE_TRUNCATION | 移动端是否截断描述 | FALSE | ✅ 设置 |
| 变量 | 描述 | 默认值 | UI替代方案 |
|---|---|---|---|
OVERSEERR_URL | Overseerr URL | - | ✅ 设置 |
OVERSEERR_API_KEY | Overseerr API密钥 | - | ✅ 设置 |
JELLYSEERR_URL | Jellyseerr URL | - | ✅ 设置 |
JELLYSEERR_API_KEY | Jellyseerr API密钥 | - | ✅ 设置 |
OMBI_URL | Ombi服务器URL | - | ✅ 设置 |
OMBI_API_KEY | Ombi API密钥 | - | ✅ 设置 |
REQUEST_SERVICE_DEFAULT | 默认请求服务 | "auto" | ✅ 设置 |
REQUEST_SERVICE_PLEX | Plex请求服务覆盖 | "auto" | ✅ 设置 |
REQUEST_SERVICE_JELLYFIN | Jellyfin请求服务覆盖 | "auto" | ✅ 设置 |
REQUEST_SERVICE_EMBY | Emby请求服务覆盖 | "auto" | ✅ 设置 |
| 变量 | 描述 | 默认值 | UI替代方案 |
|---|---|---|---|
APPLE_TV_ID | Apple TV标识符 | - | ✅ 自动发现 |
TV_<NAME>_TYPE | TV类型(webos、tizen、android) | - | ✅ 自动发现 |
TV_<NAME>_IP | TV IP地址 | - | ✅ 自动发现 |
TV_<NAME>_MAC | TV MAC地址 | - | ✅ 自动发现 |
注意:将
<NAME>替换为自定义TV标识符(如TV_LIVING_ROOM_TYPE: "webos")。仅使用字母、数字和下划线。
| 变量 | 描述 | 默认值 | UI替代方案 |
|---|---|---|---|
TZ | 海报时区 | UTC | ✅ 设置 |
DEFAULT_POSTER_TEXT | 默认文本 | - | ✅ 设置 |
PLEX_POSTER_USERS | 要监控的Plex用户 | - | ✅ 用户选择器 |
JELLYFIN_POSTER_USERS | 要监控的Jellyfin用户 | - | ✅ 用户选择器 |
EMBY_POSTER_USERS | 要监控的Emby用户 | - | ✅ 用户选择器 |
POSTER_MODE | 无电影播放时显示的海报类型 | Default | ✅ 设置 |
POSTER_DISPLAY_MODE | 播放电影时优先显示内容 | first_active | ✅ 设置 |
SCREENSAVER_INTERVAL | 屏保更新频率(秒) | 300 | ✅ 设置 |
PREFERRED_POSTER_USER | 始终显示的用户 | - | ✅ 用户选择器 |
PREFERRED_POSTER_SERVICE | 上述用户所属的服务 | - | ❌ 自动 |
注意:
POSTER_MODE选项:default或screensaver;POSTER_DISPLAY_MODE选项:first_active或preferred_user
| 变量 | 描述 | 默认值 | UI替代方案 |
|---|---|---|---|
TRAKT_CLIENT_ID | 自定义Trakt应用ID | 内置应用 | ✅ 内置认证 |
TRAKT_CLIENT_SECRET | 自定义Trakt密钥 | 内置应用 | ✅ 内置认证 |
TRAKT_ACCESS_TOKEN | 自定义访问令牌 | - | ✅ 内置认证 |
TRAKT_REFRESH_TOKEN | 自定义刷新令牌 | - | ✅ 内置认证 |
进入设置并启用“Advertise as Player”(作为播放器广播)。
进入设置→网络,启用“Enable Local Network Discovery (GDM)”(启用本地网络发现)。
获取Apple TV ID:
bashdocker exec -ti movie-roulette /bin/sh atvremote scan
记录Apple TV标识符(格式:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
添加到环境变量:
yamlenvironment: APPLE_TV_ID: "你的-apple-tv-标识符"
与Apple TV配对:
bashdocker exec -ti movie-roulette /bin/sh atvremote --id YOUR-ID --protocol companion pair
在Apple TV上输入显示的PIN码
Movie Roulette支持多个TV实例,使用动态命名模式。每个TV通过名称和所需参数配置。支持的TV平台:
支持的TV类型:
webos:LG WebOS电视tizen:三星Tizen电视android:安卓电视配置示例:
yamlenvironment: # 客厅LG WebOS电视示例 TV_LIVING_ROOM_TYPE: "webos" TV_LIVING_ROOM_IP: "192.168.1.100" TV_LIVING_ROOM_MAC: "AA:BB:CC:DD:EE:FF" # 卧室三星电视示例 TV_BEDROOM_TYPE: "tizen" TV_BEDROOM_IP: "192.168.1.101" TV_BEDROOM_MAC: "11:22:33:44:55:66" # 厨房安卓电视示例 TV_KITCHEN_TYPE: "android" TV_KITCHEN_IP: "192.168.1.102" TV_KITCHEN_MAC: "CC:DD:EE:FF:00:11"
添加到Homepage的services.yaml:
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像服务
在 Docker Desktop 配置镜像
Docker Compose 项目配置
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
MacOS OrbStack 容器配置
在宝塔面板一键配置镜像
Synology 群晖 NAS 配置
飞牛 fnOS 系统配置镜像
极空间 NAS 系统配置服务
爱快 iKuai 路由系统配置
绿联 NAS 系统配置镜像
QNAP 威联通 NAS 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
来自真实用户的反馈,见证轩辕镜像的优质服务