Docker 部署 qBittorrent 下载器 📥

qBittorrent 下载器


📋 目录导航


🎯 项目简介

qBittorrent 是一个开源免费的 BitTorrent 客户端,提供简洁的界面和强大的功能,是替代 μTorrent 的优秀选择。通过 Docker 部署可以轻松管理并保持系统整洁。


🛠️ 核心特性

特性类别 功能描述 优势
⚡ 高速下载 优化的 BT 协议实现 充分利用带宽,提高下载速度
🌐 Web 界面 远程管理界面 随时随地管理下载任务
🔒 安全加密 支持协议加密 防止 ISP 限制,保护隐私
📊 详细统计 下载/上传速度监控 实时了解网络使用情况
🎯 RSS 订阅 自动下载支持 自动获取最新内容
🔄 队列管理 智能任务调度 合理分配带宽资源
📁 文件管理 选择性下载 只下载需要的文件
🌙 计划任务 时段限速 在不影响使用时全速下载
🔍 搜索集成 内置搜索插件 方便查找种子资源
📱 移动支持 响应式界面 手机平板均可管理

🐳 一、Docker 部署 qBittorrent

1. 创建部署目录和配置文件 📁

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# 创建部署目录
mkdir -p /mnt/mydisk/home/qbittorrent && cd $_ && \
cat > docker-compose.yml <<'EOF'
services:
qbittorrent:
container_name: qbittorrent
image: lscr.io/linuxserver/qbittorrent:latest
restart: unless-stopped
network_mode: bridge
ports:
- "6881:6881" # BT 下载端口 (TCP)
- "6881:6881/udp" # BT 下载端口 (UDP)
- "8081:8081" # Web 管理界面端口
volumes:
- ./config:/config # 配置文件目录
- /mnt/ARS2-NFS/downloads/qbittorrent:/downloads # 下载文件目录
environment:
- PUID=1000 # 用户ID
- PGID=1000 # 组ID
- TZ=Asia/Shanghai # 时区设置
- UMASK_SET=022 # 文件权限掩码
- WEBUI_PORT=8081 # Web 管理界面端口
- TORRENTING_PORT=6881 # BT 下载端口

# 下载目录: /mnt/ARS2-NFS/downloads/qbittorrent
# 默认用户名: admin
# 默认密码: 查看容器日志获取或使用下方提供的密码
EOF

2. 启动 qBittorrent 服务 🚀

1
docker-compose up -d

🚀 二、初始访问和配置

1. 获取登录凭据 🔑

首次启动后,需要查看容器日志获取随机生成的密码:

1
docker logs qbittorrent | grep -i password

qBittorrent 密码查看

2. 访问 Web 界面 💻

  1. 打开浏览器访问 http://10.10.10.245:8081
  2. 使用以下凭据登录:
    • 用户名:admin
    • 密码:从日志中获取的密码
  3. 重要:首次登录后请立即修改密码

🌐 三、Nginx 反向代理配置

1. 创建 Nginx 配置文件 🔧

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
mkdir -p /etc/nginx/conf.d && \
cat > /etc/nginx/conf.d/qbittorrent.conf <<'EOF'
server {
listen 8080 ssl;
listen [::]:8080 ssl;
server_name qbittorrent.yourdomain.com; # 替换为你的域名

# SSL 证书
ssl_certificate /etc/nginx/ssl/cert.pem;
ssl_certificate_key /etc/nginx/ssl/key.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers off;
ssl_ciphers ECDHE+AESGCM:ECDHE+CHACHA20:!aNULL:!MD5;

# 安全头部
add_header X-Frame-Options DENY;
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";

# 文件大小限制
client_max_body_size 100M;

location / {
proxy_pass http://127.0.0.1:8081;
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;
proxy_http_version 1.1;
proxy_buffering off;

# WebSocket 支持
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}

# 错误页
error_page 404 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
EOF

2. 测试并重载 Nginx 🔄

1
sudo nginx -t && sudo systemctl reload nginx

🔧 四、容器维护命令

1. Docker Compose 命令 🐳

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# 进入项目目录
cd /mnt/mydisk/home/qbittorrent

# 停止并删除容器
docker-compose down

# 拉取最新镜像
docker-compose pull

# 启动容器
docker-compose up -d

# 查看服务状态
docker-compose ps

# 查看服务日志
docker-compose logs

# 跟踪服务日志
docker-compose logs -f

# 查看指定服务日志
docker-compose logs qbittorrent

# 完整升级流程
docker-compose down && \
docker-compose pull && \
docker-compose up -d && \
docker image prune -f

2. Docker 容器命令 📦

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# 查看所有容器名称
docker ps -a --format "{{.Names}}"

# 查看运行中容器
docker ps

# 停止/启动/重启容器
docker stop qbittorrent # 停止容器
docker start qbittorrent # 启动容器
docker restart qbittorrent # 重启容器

# 删除容器
docker rm qbittorrent # 删除已停止容器
docker rm -f qbittorrent # 强制删除运行中容器

# 进入容器Shell
docker exec -it qbittorrent sh # 使用sh进入容器
docker exec -it qbittorrent bash # 使用bash进入容器

# 查看容器详情和资源使用
docker inspect qbittorrent # 查看详细配置
docker stats qbittorrent # 实时资源监控

## 容器日志管理
docker logs qbittorrent # 查看日志
docker logs -f qbittorrent # 实时跟踪日志
docker logs --tail 100 qbittorrent # 查看最后100行
docker logs -t qbittorrent # 带时间戳的日志

3. Docker 镜像管理 📀

1
2
3
4
docker images                  # 列出所有镜像
docker rmi <image_name:tag> # 删除指定镜像
docker image prune -f # 清理悬空镜像
docker image prune -a -f # 清理所有未使用镜像

🌟 启航下载,掌控无限

通过本文档,你已经成功使用 Docker 部署了 qBittorrent 下载器,并完成了 Web 界面的访问配置。现在,你可以:

极速下载 享受稳定高效的文件下载体验,充分利用网络带宽
🌐 远程管理 随时随地通过网页界面添加和管理下载任务
🔒 隐私保护 通过加密连接和安全配置保障下载隐私
📊 智能调度 利用计划任务和队列管理优化资源使用

下载管理,是数字内容获取的重要环节。愿 qBittorrent 成为你可靠的下载助手,为你高效获取每一份所需资源,管理每一个下载任务。

从现在开始,有序下载,高效管理——构建你专属的下载工作站吧!⬇️


📌 合规使用:请遵守当地法律法规,仅下载授权内容
🔧 定期维护:建议定期清理完成的任务和缓存文件
🌐 网络优化:根据网络环境调整连接数和带宽限制
🐛 问题反馈:使用中遇到问题可访问 GitHub Issues 获取支持

祝你下载顺利,资源丰富!🎉