🚀 使用 Docker Compose 部署 Jackett
🚀 使用 Docker Compose 部署 Jackett
Jackett 是一款开源的索引器代理,它能将数百个种子跟踪网站的搜索功能统一成API,主要与Sonarr、Radarr、Lidarr等媒体管理应用程序配合使用。它支持跨平台运行,通过Docker部署可以简化安装过程并确保环境一致性。
📦 项目简介
Jackett 的核心功能是作为中间件,将各种不支持直接API访问的种子网站转换为应用程序可读的格式。它的主要特性包括:
- 多索引器支持:整合众多流行的种子站点的搜索功能,提供一个统一的查询接口
- API支持:提供RESTful API,使其他应用程序(如Sonarr、Radarr等)能够调用其搜索服务
- 插件系统:采用模块化和可扩展的设计,可以通过插件支持更多的搜索引擎
- 跨平台:基于.NET Core开发,可以运行在Windows、Linux和macOS等多种操作系统上
核心价值:Jackett 简化了媒体管理应用程序从多个来源获取资源信息的过程,使这些媒体管理器能够轻松地检查多种索引平台上的新上传资源,从而实现媒体下载的自动化。
⚙️ 部署前准备
-
环境要求
- 已安装 Docker 和 Docker Compose(这是运行Jackett的必备条件)
- 系统内存:建议至少 512MB(1GB以上更佳)
- 磁盘空间:根据配置和日志大小而定,建议预留100MB以上空间
-
环境检查 在终端中执行以下命令,确认Docker环境正常:
bash docker --version docker-compose --version -
创建项目目录 建议创建一个独立的目录来管理Jackett的所有文件,这有助于日后管理和备份:
bash mkdir -p /opt/docker/jackett cd /opt/docker/jackett
🛠️ 配置 Docker Compose
基于你提供的配置,这里是对 docker-compose.yml 文件的解读和优化说明:
networks:
videos:
external: true # 使用已创建的外部网络(需提前执行 docker network create videos)
services:
jackett:
image: 'linuxserver/jackett:latest' # 官方最新镜像(LinuxServer 维护,稳定可靠)
container_name: jackett # 容器名称,便于管理
restart: always # 容器退出后自动重启(开机自启)
#network_mode: bridge
ports:
- '5002:9117' # 端口映射:主机 5002 端口 → 容器 9117 端口(WebUI 访问端口)
environment:
- HOME=/root # 容器内家目录(默认即可)
- LANG=en_US.UTF-8 # 语言编码(默认英文,不影响中文显示)
- LANGUAGE=en_US.UTF-8
- PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin # 系统路径(默认无需修改)
- TERM=xterm # 终端类型(默认即可)
- XDG_CONFIG_HOME=/config # 配置文件路径(映射到主机 ./config)
- XDG_DATA_HOME=/config # 数据文件路径(与配置目录一致)
#- TZ=Asia/Shanghai # 推荐添加:设置正确时区
#- AUTO_UPDATE=true # 推荐添加:启用自动更新
volumes:
- ./config:/config # 持久化配置目录 # 配置目录:主机 ./config → 容器 /config(保存索引源、设置等)
#- ./video:/media
- /mnt/10t/videos/downloads:/media # 媒体目录:映射主机下载目录到容器 /media(关联下载路径)
#- ./downloads:/downloads # 可选:若需通过 Jackett 直接下载,可添加此映射(新手暂无需配置)
#privileged: true
#特权:真
#restart: 'unless-stopped'
networks:
videos:
ipv4_address: 10.1.1.4 # 指定容器在网络中的静态IP # 容器在 videos 网络中的固定 IP(默认即可,无需修改)
#ipv6_address: 2001:3984:3989::10
关键配置说明:
| 配置项 | 说明与建议 |
|---|---|
ports |
'5002:9117' 将容器内的9117端口映射到主机的5002端口。你可以根据需要修改主机端口(前面的5002),但容器端口(后面的9117)请保持不变,因为这是Jackett的默认服务端口。 |
volumes |
./config:/config 用于持久化存储Jackett的配置、索引器设置等数据,确保容器重启后配置不会丢失。/mnt/10t/videos/downloads:/media 用于映射媒体目录。 |
environment |
环境变量设置了容器运行所需的基本参数。建议添加 TZ 变量设置正确时区,以及 AUTO_UPDATE=true 启用自动更新。 |
networks |
使用外部网络并指定静态IP,便于容器间通信。 |
🚀 启动与验证
-
启动Jackett服务 在
docker-compose.yml文件所在目录执行:bash docker-compose up -d此命令会拉取镜像并在后台启动容器。 -
检查服务状态
bash docker-compose ps如果看到jackett容器的状态为Up,就表示部署成功了。 -
查看实时日志(可选) 如果遇到问题,可以通过以下命令查看容器日志来排查:
bash docker-compose logs -f jackett -
访问Web界面 打开浏览器,访问
http://你的服务器IP:5002。- 如果一切正常,你将看到Jackett的Web管理界面。
⚙️ 基础配置与使用
-
添加索引器
- 首次访问Jackett界面,点击 "Add Indexer" 按钮
- 在弹出的窗口中,你可以搜索或浏览想要添加的索引器
- 找到需要的索引器后,点击右侧的 "+" 号添加
- 添加后,可以点击 "Test" 按钮检查连接状态
-
配置代理(如需要)
- 如果你的网络环境需要代理,可以在Jackett界面的 "Jackett Configuration" 部分配置Proxy设置
- 填写代理服务器地址、端口等信息
- 配置完成后点击 "Apply Server Settings" 保存
-
获取API密钥
- 在Jackett界面右上角可以找到你的 API密钥
- 这个API密钥在配置Sonarr、Radarr等应用程序时会用到
-
与媒体服务器集成
- 在Sonarr、Radarr等应用程序中,添加Jackett作为索引器
- 在URL字段中填写Jackett服务地址(例如
http://10.1.1.4:9117) - 填入从Jackett获取的API密钥
- 对于Torznab索引器,可以使用Jackett提供的 "Copy Torznab Feed" 功能快速获取配置URL
🔒 维护与管理
- 服务管理:
- 停止服务:
docker-compose down - 重启服务:
docker-compose restart -
查看服务状态:
docker-compose ps -
数据备份:
- 定期备份
./config目录,这个目录包含了Jackett的所有配置和索引器设置 -
备份你的
docker-compose.yml文件 -
版本更新: Jackett活跃更新,建议定期升级以获取新功能和安全性更新:
bash # 进入 docker-compose.yml 所在目录 docker-compose down docker-compose pull # 拉取最新镜像 docker-compose up -d设置AUTO_UPDATE=true环境变量可以让Jackett自动更新索引器定义
🐛 常见问题排查
| 问题现象 | 可能原因与解决方法 |
|---|---|
| 无法访问Web界面 | 1. 检查防火墙/安全组是否放行 5002端口 2. 确认容器是否正常运行: docker-compose ps3. 查看容器日志: docker-compose logs jackett |
| 索引器测试失败 | 1. 检查网络连接,特别是如果需要代理,请正确配置代理设置 2. 确认索引器网站是否可访问 3. 某些索引器可能需要CloudFlare验证,需要额外配置 |
| API调用失败 | 1. 确认API密钥是否正确 2. 检查调用Jackett的应用程序配置的URL和端口是否正确 |
| 索引器加载异常 | 1. 尝试手动点击"添加索引器"激活具体索引器 2. 清理未使用的索引器定义文件 3. 检查日志中的绑定警告信息 |
| 服务启动问题 | 1. 如果遇到索引器键名冲突,可以删除有问题的索引器定义文件并重启服务 2. 确保配置目录有正确的读写权限 |
💡 提示:Jackett的索引器管理采用按需激活机制,只有被用户显式添加的索引器才会创建运行实例,这种设计既保证了系统启动速度,又避免了不必要的资源消耗。
希望这份教程能帮助你顺利完成Jackett的部署,享受自动化媒体搜索和管理带来的便利!