本文属于「自托管 Docker 部署实战」系列(共 35 篇),第 22 篇。 示例中的 IP(192.0.2.10)、域名(example.com)、密码均为占位符,请按实际环境替换。

它是什么

Jackett 把几百个 BT/PT 站点的搜索接口统一成一个 API,供 Sonarr、Radarr、qBittorrent 等工具调用。它本身不下载,只负责「搜种子」并把结果翻译成标准格式。

前置条件

  • 一台 Linux 服务器(1C1G 起);
  • 已安装 Docker 与 Compose v2;
  • 能访问目标站点(部分站点需要代理或 Cookie)。
curl -fsSL https://get.docker.com | sh
mkdir -p /srv/docker/active/jackett && cd /srv/docker/active/jackett

镜像地址

lscr.io/linuxserver/jackett:latest

目录结构

/srv/docker/active/jackett/
├── docker-compose.yml
├── config/               # 索引器配置、API Key、日志
└── downloads/            # 手动搜索时的下载目录(可选)

部署步骤

# docker-compose.yml
services:
  jackett:
    image: lscr.io/linuxserver/jackett:latest
    container_name: jackett
    restart: unless-stopped
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Shanghai
    volumes:
      - ./config:/config
      - ./downloads:/downloads
    ports:
      - "9117:9117"
docker compose up -d
docker compose logs -f --tail=100

浏览器打开 http://<SERVER_IP>:9117,在 Dashboard 里可以看到 API Key,Sonarr/Radarr 添加索引器时填这个地址和 Key。

关键配置

项 说明
9117 Web 管理与 API 端口
PUID/PGID 与宿主机目录属主保持一致,否则写配置会失败
./config 索引器配置和 API Key,必须备份
./downloads 仅「手动搜索并下载」时用到

注意事项

  • API Key 等于访问凭据,泄露后别人可以用你的索引器,别截图外传;
  • 很多站点需要 Cookie 或登录,Jackett 里配置后注意别把 config/ 提交到 Git;
  • 部分站点有 Cloudflare 防护,需要额外部署 FlareSolverr 并在 Jackett 里指向它;
  • 时区用 TZ 控制,日志时间不对先查这里;
  • 容器内跑的是 .NET,内存 512M 起,索引器多了会涨。

备份与升级

# 备份索引器配置
tar czf "jackett-config-$(date +%F).tar.gz" ./config

# 升级
docker compose pull
docker compose up -d
  • 升级后如果索引器全部失效,多半是站点改版,等 Jackett 更新或手动改定义;
  • config/ 里含 API Key 与站点 Cookie,备份文件也要按机密对待。