专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题轩辕镜像免费版
其他
关于我们网站地图
热门搜索:
recommendarr

tannermiddleton/recommendarr

tannermiddleton

基于Sonarr、Radarr媒体库及Plex、Jellyfin等观看历史,通过AI生成个性化影视推荐的Web应用,支持多种AI服务和本地模型部署。

下载次数: 0状态:社区镜像维护者:tannermiddleton仓库类型:镜像最近更新:1 年前
轩辕镜像,不浪费每一次拉取。点击查看
中文简介
标签下载
镜像标签列表与下载命令
轩辕镜像,不浪费每一次拉取。点击查看

Recommendarr

!https://github.com/user-attachments/assets/19d332af-f90d-4b6d-8750-4be07bc45161

Recommendarr是一款Web应用,可基于您的Sonarr、Radarr、Plex和Jellyfin媒体库,通过AI生成个性化的电视剧和电影推荐。

🎮 加入我们的***社区!

⚠️ 重要提示:从网络外部访问此应用时,必须在路由器/防火墙上开放应用端口(默认:3000)。

⚠️ 端口配置:应用现在使用单个端口(默认:3000)同时运行前端和API,可通过PORT环境变量配置。

🌟 功能特性

  • AI驱动的推荐:基于您现有的媒体库获取个性化电视剧和电影建议
  • Sonarr与Radarr集成:直接连接到您的媒体服务器,分析您的电视剧和电影收藏
  • Plex、Jellyfin、Tautulli与Trakt集成:分析您的观看历史,基于实际观看内容提供更精准的推荐
  • 灵活的AI支持:兼容OpenAI、本地模型(Ollama/LM Studio)或任何OpenAI兼容API
  • 自定义选项:调整推荐数量、模型参数等
  • 深色/浅色模式:根据偏好切换主题
  • 海报图片:显示媒体海报,支持 fallback 生成

📋 前提条件

  • 具有API访问权限的Sonarr实例(用于电视剧推荐)
  • 具有API访问权限的Radarr实例(用于电影推荐)
  • 具有API访问权限的Plex、Jellyfin、Tautulli或Trakt实例(用于观看历史分析)-可选
  • OpenAI API密钥或任何OpenAI兼容API(如本地LLM服务器)
  • Docker(推荐)或Node.js(v14+)用于手动安装

🚀 快速开始

选项1:Docker Hub镜像(最简单)

开始使用Recommendarr的最简单方式:

bash
# 拉取并运行,默认端口3000
docker run -d \
  --name recommendarr \
  -p 3000:3000 \
  -v recommendarr-data:/app/server/data \
  tannermiddleton/recommendarr:latest

# 或使用自定义端口运行(例如8080)
docker run -d \
  --name recommendarr \
  -e PORT=8080 \
  -p 8080:8080 \
  -v recommendarr-data:/app/server/data \
  tannermiddleton/recommendarr:latest

然后在浏览器中访问http://localhost:3000(或您的自定义端口)。

默认登录信息:

  • 用户名:admin
  • 密码:1234

⚠️ 重要提示:请在首次登录后立即更改密码以确保安全。

选项2:Docker Compose

如果您更喜欢使用Docker Compose:

bash
# 克隆仓库(包含docker-compose.yml文件)
git clone https://github.com/fingerthief/recommendarr.git
cd recommendarr

# 启动应用
docker-compose up -d

这将:

  1. 从Docker Hub拉取预构建镜像
  2. 配置适当的网络和持久化存储
  3. 启动统一服务

然后在浏览器中访问http://localhost:3000(或配置的自定义端口)。

您可以在运行docker-compose前设置PORT环境变量来自定义端口:

bash
PORT=8080 docker-compose up -d

选项3:构建自己的Docker镜像

如果您想自己构建Docker镜像:

bash
# 克隆仓库
git clone https://github.com/fingerthief/recommendarr.git
cd recommendarr

# 构建Docker镜像
docker build -t recommendarr:local .

# 使用默认端口运行容器
docker run -d \
  --name recommendarr \
  -p 3000:3000 \
  -v recommendarr-data:/app/server/data \
  recommendarr:local

# 或使用自定义端口运行
docker run -d \
  --name recommendarr \
  -e PORT=8080 \
  -p 8080:8080 \
  -v recommendarr-data:/app/server/data \
  recommendarr:local

选项4:手动安装

用于开发或不使用Docker的情况:

  1. 克隆仓库:
bash
git clone https://github.com/fingerthief/recommendarr.git
cd recommendarr
  1. 安装依赖:
bash
npm install
  1. 构建前端:
bash
npm run build
  1. 启动统一服务器:
bash
npm run unified
  1. 在浏览器中访问http://localhost:3000(或配置的自定义端口)。

🔧 配置

1. 连接Sonarr、Radarr和/或Plex/Jellyfin/Trakt

  1. 首次打开Recommendarr时,系统会提示您连接服务
  2. 对于Sonarr(电视剧推荐):
    • 输入Sonarr URL(例如http://localhost:8989或https://sonarr.yourdomain.com)
    • 输入Sonarr API密钥(在Sonarr的设置→常规中找到)
    • 点击"连接"
  3. 对于Radarr(电影推荐):
    • 输入Radarr URL(例如http://localhost:7878或https://radarr.yourdomain.com)
    • 输入Radarr API密钥(在Radarr的设置→常规中找到)
    • 点击"连接"
  4. 对于Plex(可选-观看历史):
    • 输入Plex URL(例如http://localhost:32400或https://plex.yourdomain.com)
    • 输入Plex令牌(可按照这些说明查找)
    • 点击"连接"
  5. 对于Jellyfin(可选-观看历史):
    • 输入Jellyfin URL(例如http://localhost:8096或https://jellyfin.yourdomain.com)
    • 输入Jellyfin API密钥(在Jellyfin的控制台→API密钥中找到)
    • 输入Jellyfin用户ID(在Jellyfin用户设置中找到)
    • 点击"连接"
  6. 对于Tautulli(可选-观看历史):
    • 输入Tautulli URL(例如http://localhost:8181或https://tautulli.yourdomain.com)
    • 输入Tautulli API密钥(在Tautulli的设置→Web界面→API中找到)
    • 点击"连接"
  7. 对于Trakt(可选-观看历史):
    • 在Trakt连接页面点击"连接"
    • 使用您的Trakt.tv账户授权Recommendarr
    • 完成认证过程以连接您的Trakt观看历史

您可以根据需要连接这些服务的任意组合。

2. 设置AI服务

  1. 导航至设置
  2. 选择AI服务选项卡
  3. 输入您的AI服务详情:
    • API URL:对于OpenAI,使用https://api.openai.com/v1。对于本地模型,使用服务器URL(例如http://localhost:1234/v1)
    • API密钥:您的OpenAI API密钥或其他服务的相应密钥(某些本地服务器不需要)
    • 模型:从列表中选择模型或保留默认值
    • 参数:根据需要调整最大令牌数和温度
  4. 点击"保存设置"

3. 获取推荐

  1. 导航至电视剧推荐或电影推荐页面
  2. 使用滑块调整您想要接收的推荐数量
  3. 如果已连接Plex、Jellyfin或Tautulli,选择是否在推荐中包含您的观看历史
  4. 点击"获取推荐"
  5. 查看带有海报和描述的个性化媒体建议

🌐 使用反向代理设置

如果您想在反向代理(如Nginx、Traefik或Caddy)后运行Recommendarr,请按照以下步骤操作:

  1. 使用您的公共URL构建自定义镜像:
bash
# 使用公共URL构建
docker build -t recommendarr:custom \
  --build-arg PUBLIC_URL=https://recommendarr.yourdomain.com \
  --build-arg BASE_URL=/ \
  .

# 使用反向代理配置运行
docker run -d \
  --name recommendarr \
  -p 3000:3000 \
  -e PUBLIC_URL=https://recommendarr.yourdomain.com \
  -e FORCE_SECURE_COOKIES=true \
  -v recommendarr-data:/app/server/data \
  recommendarr:custom
  1. 配置反向代理以将请求转发到Recommendarr:

对于Nginx:

nginx
server {
    listen 443 ssl;
    server_name recommendarr.yourdomain.com;

    # SSL配置
    ssl_certificate /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;

    location / {
        proxy_pass http://localhost:3000;
        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;
    }
}

对于Docker Compose:

yaml
services:
  recommendarr:
    build:
      context: .
      args:
        - PUBLIC_URL=https://recommendarr.yourdomain.com
        - BASE_URL=/
    ports:
      - "3000:3000"
    # 允许访问主机上的服务
    extra_hosts:
      - "host.docker.internal:host-gateway"
    environment:
      - NODE_ENV=production
      - DOCKER_ENV=true
      - PORT=3000
      - PUBLIC_URL=https://recommendarr.yourdomain.com
      # 在HTTPS反向代理后启用安全Cookie
      - FORCE_SECURE_COOKIES=true
    volumes:
      - recommendarr-data:/app/server/data
    restart: unless-stopped

volumes:
  recommendarr-data:

🔧 环境变量

变量描述默认值
PORT运行前端和API的端口3000
PUBLIC_URL应用可访问的公共URLhttp://localhost:${PORT}
BASE_URL应用的基本路径(用于子路径部署)/
FORCE_SECURE_COOKIES即使在HTTP上也强制使用安全Cookie(用于HTTPS反向代理)false
NODE_ENVNode.js环境production
DOCKER_ENV启用Docker特定功能的标志true

🖥️ 兼容的AI服务

Recommendarr适用于各种AI服务:

  • OpenAI API:与GPT-3.5和GPT-4等模型的标准集成
  • Ollama:带有OpenAI兼容API的自托管模型
  • LM Studio:在您的计算机上本地运行模型
  • Anthropic Claude:通过OpenAI兼容端点
  • 自托管模型:任何具有OpenAI兼容聊天完成API的服务

推荐模型

以下是一些与Recommendarr配合良好的模型推荐:

通过OpenRouter的免费/低成本选项

  • Meta Llama 3.3 70B Instruct:免费且性能出色
  • Gemini 2.0模型(Flash/Pro/Thinking):卓越的推荐质量
  • DeepSeek R1模型:各变体均表现强劲

高级模型(通过OpenRouter经济实惠)

  • Claude 3.7/3.5 Haiku:在理解您的库偏好方面表现出色
  • GPT-4o mini:性能和成本的绝佳平衡
  • Grok Beta:价格合理,推荐效果好
  • Amazon Nova Pro:强大的媒体理解能力

本地模型

  • DeepSeek R1 7B Qwen Distill:小型模型中的良好表现(通过LM Studio)

为获得最佳结果,尝试将最大令牌数设置为4000,温度根据模型在0.6-0.8之间调整。

🔧 故障排除

反向代理的Cookie错误

如果您使用HTTPS反向代理并遇到类似以下的错误:

cookie "auth_token" has been rejected because a non-https cookie can't be set "secure"

这是因为您的反向代理终止了HTTPS,但将请求作为HTTP转发到容器。要解决此问题:

  1. 将FORCE_SECURE_COOKIES=true环境变量添加到docker-compose.yml或docker run命令中:
yaml
environment:
  - FORCE_SECURE_COOKIES=true
  1. 确保反向代理转发正确的头信息。对于Nginx,添加:
proxy_set_header X-Forwarded-Proto $scheme;

端口映射

  • 始终确保内部和外部端口匹配(例如3000:3000)
  • 更改端口时,同时更新端口映射和PORT环境变量

开发环境设置

出于开发目的,您可以分别运行前端和后端:

bash
# 在开发模式下同时运行前端和后端
npm run dev

# 或单独运行它们:
# 带有热重载的前端开发服务器
npm run serve

# 后端API服务器
npm run api

开发服务器将使用端口8080运行带有热重载的前端,使用端口3050运行API。在生产环境中,两者都在单个端口上运行。

📄 许可证

本项目采用MIT许可证 - 详见LICENSE文件。

🙏 致谢

  • Vue.js - 渐进式JavaScript框架
  • Sonarr - 为电视剧推荐提供强大API支持
  • Radarr - 为电影推荐提供API支持
  • Plex - 提供观看历史数据的API
  • Jellyfin - 提供额外观看历史数据的API
  • Tautulli - 提供详细Plex观看统计的API
  • Trakt - 提供观看历史和评分数据的API
  • OpenRouter - 为基于AI的建议提供API支持

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 recommendarr 镜像标签

docker pull docker.xuanyuan.run/tannermiddleton/recommendarr:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull tannermiddleton/recommendarr:<标签>

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

Docker 配置

登录仓库拉取

通过 Docker 登录认证访问私有仓库

专属域名拉取

无需登录使用专属域名

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

Dev Containers

VS Code Dev Containers 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

Harbor 镜像源配置

Harbor Proxy Repository 对接专属域名

Portainer 镜像源配置

Portainer Registries 加速拉取

Nexus 镜像源配置

Nexus3 Docker Proxy 内网缓存

系统配置

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

MacOS OrbStack

MacOS OrbStack 容器配置

Docker Compose

Docker Compose 项目配置

NAS 设备

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

极空间

极空间 NAS 系统配置服务

网络设备

爱快路由

爱快 iKuai 路由系统配置

宝塔面板

在宝塔面板一键配置镜像

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

使用与功能问题

配置了专属域名后,docker search 为什么会报错?

docker search 限制

Docker Hub 上有的镜像,为什么在轩辕镜像网站搜不到?

站内搜不到镜像

机器不能直连外网时,怎么用 docker save / load 迁镜像?

离线 save/load

docker pull 拉插件报错(plugin v1+json)怎么办?

插件要用 plugin install

WSL 里 Docker 拉镜像特别慢,怎么排查和优化?

WSL 拉取慢

轩辕镜像安全吗?如何用 digest 校验镜像没被篡改?

安全与 digest

第一次用轩辕镜像拉 Docker 镜像,要怎么登录和配置?

新手拉取配置

轩辕镜像合规吗?轩辕镜像的合规是怎么做的?

镜像合规机制

错误码与失败问题

docker pull 提示 manifest unknown 怎么办?

manifest unknown

docker pull 提示 no matching manifest 怎么办?

no matching manifest(架构)

镜像已拉取完成,却提示 invalid tar header 或 failed to register layer 怎么办?

invalid tar header(解压)

Docker pull 时 HTTPS / TLS 证书验证失败怎么办?

TLS 证书失败

Docker pull 时 DNS 解析超时或连不上仓库怎么办?

DNS 超时

docker 无法连接轩辕镜像域名怎么办?

域名连通性排查

Docker 拉取出现 410 Gone 怎么办?

410 Gone 排查

出现 402 或「流量用尽」提示怎么办?

402 与流量用尽

Docker 拉取提示 UNAUTHORIZED(401)怎么办?

401 认证失败

遇到 429 Too Many Requests(请求太频繁)怎么办?

429 限流

docker login 提示 Cannot autolaunch D-Bus,还算登录成功吗?

D-Bus 凭证提示

为什么会出现「单层超过 20GB」或 413,无法加速拉取?

413 与超大单层

账号 / 计费 / 权限

轩辕镜像免费版和专业版有什么区别?

免费版与专业版区别

轩辕镜像支持哪些 Docker 镜像仓库?

支持的镜像仓库

镜像拉取失败还会不会扣流量?

失败是否计费

麒麟 V10 / 统信 UOS 提示 KYSEC 权限不够怎么办?

KYSEC 拦截脚本

如何在轩辕镜像申请开具发票?

申请开票

怎么修改轩辕镜像的网站登录和仓库登录密码?

修改登录密码

如何注销轩辕镜像账户?要注意什么?

注销账户

配置与原理类

写了 registry-mirrors,为什么还是走官方或仍然报错?

mirrors 不生效

怎么用 docker tag 去掉镜像名里的轩辕域名前缀?

去掉域名前缀

如何拉取指定 CPU 架构的镜像(如 ARM64、AMD64)?

指定架构拉取

用轩辕镜像拉镜像时快时慢,常见原因有哪些?

拉取速度原因

为什么拉取镜像的 :latest 标签,拿到的往往不是「最新」镜像?

latest 与「最新」

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
tannermiddleton/recommendarr
博客Docker 镜像公告与技术博客
热门查看热门 Docker 镜像推荐
安装一键安装 Docker 并配置镜像源
镜像拉取问题咨询请 提交工单,官方技术交流群:1072982923。轩辕镜像所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
镜像拉取问题咨询请提交工单,官方技术交流群:。轩辕镜像所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
商务合作:点击复制邮箱
©2024-2026 源码跳动
商务合作:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.