下载,是很多网络用户必备的需求之一。以往我们使用现成工具迅雷,我们必须保持开机,会员,合法等等要求,但是依托服务器,我们其实也可以搭建BT下载工具,只要你的硬盘够用,把种子或者链接进行加载,可以24小时运行下载。这些软件中,目前qBittorrent和Transmission最受欢迎的两位选手。

因为之前我搭建了界面化docker管理工具Portainer,所以我将使用Portainer的Stacks去搭建服务,其实如果不愿意使用Portainer,也可以直接利用docker-compose使用docker-compose脚本去启动服务。如果需要原生启动,也只需要把docker-compose的脚本按照对应命令转换为对应命令即可。

搭建

搭建Transmission

stacks脚本(docker-compose脚本)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
version: "2.1"
services:
transmission:
image: linuxserver/transmission:latest
container_name: transmission
environment:
- TZ=Etc/UTC
- USER=登录用户名
- TRANSMISSION_WEB_HOME=/config/transmission-web-control/src/
- PASS=登录密码
- PEERPORT=31413
volumes:
- /docker/transmission:/config
- /Download/trDownloads/complete:/downloads/complete
- /Download/trDownloads/incomplete:/downloads/incomplete
- /Download/trDownloads/watch:/watch
ports:
- 9091:9091
- 31413:31413
- 31413:31413/udp
restart: unless-stopped

脚本解释:

  1. image: linuxserver/transmission:latest:拉取的镜像名称及标签
  2. **container_name: transmission:**启动的容器名称
  3. **volumes:**路径映射,一定注意以下左边都是我宿主机路径,右边不能改,左边根据自己实际情况调整。
    • /docker/transmission:/config 配置文件路径,后边我把主题也放进了这么目录
    • /Download/trDownloads/complete:/downloads/complete下载完成的资源会在这个目录
    • /Download/trDownloads/incomplete:/downloads/incomplete正在下载的资源会在这个目录
    • /Download/trDownloads/watch:/watchBT种子监控目录,你把需要下载的种子放在这个目录,会自己监控开始下载
  4. **environment:**环境变量
    • USER=登录用户名登录面板用户名,需要修改
    • PASS=登录密码登录密码,需要修改
    • TRANSMISSION_WEB_HOME=/config/transmission-web-control/src/一款主题,因为原生主题不适合中国宝宝体质的身体,建议下载这款主题并且解压至配置文件目录改名为transmission-web-control,不改就需要自己对应修改路径名,我的是在/docker/transmission目录下,但是对于容器内部是/config目录下
    • PEERPORT玩BT,PT的都知道这个干啥,希望人人为我,我为人人
  5. **ports:**端口,9091是web界面访问路径,31413是peer端口
  6. **restart:**重启策略,在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器

启动步骤

利用Portainer部署

点击Stacks -> Add stack -> 填写Name与脚本 -> Deploy the stack启动即可。

利用docker-compose部署
  1. 在自己确定好的tr脚本存储目录下,创建docker-compose.yaml脚本,写入上面脚本

    1
    2
    3
    4
    5
    touch docker-compose.yml

    vi docker-compose.yml

    写入上面脚本,wq保存退出
  2. 执行启动命令

    在使用docker-compose的命令时,默认会在当前目录下找docker-compose.yml文件

    1
    2
    3
    4
    5
    6
    7
    8
    # 1. 启动管理的容器
    docker-compose up -d

    # 2. 关闭并删除容器
    docker-compose down

    # 3. 开启|关闭|重启已经存在的由docker-compose维护的容器
    docker-compose start|stop|restart

使用

搭建qbittorrent

stacks脚本(docker-compose脚本)

1
2
3
4
5
6
7
8
9
10
11
12
13
version: "2.1"
services:
qbittorrent:
image: linuxserver/qbittorrent:latest
container_name: qbittorrent
volumes:
- /docker/qbittorrent:/config
- /Download/qbDownloads:/downloads
ports:
- 8080:8080
- 6881:6881
- 6881:6881/udp
restart: unless-stopped

脚本解释:

  1. image: linuxserver/qbittorrent:latest:拉取的镜像名称及标签
  2. **container_name: qbittorrent:**启动的容器名称
  3. **volumes:**路径映射,一定注意以下左边都是我宿主机路径,右边不能改,左边根据自己实际情况调整。
    • /docker/qbittorrent:/config 配置文件路径
    • /Download/qbDownloads:/downloads下载资源目录
  4. **ports:**端口,8080是web界面访问路径,6881是peer端口
  5. **restart:**重启策略,在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器

启动步骤

利用Portainer部署,部署方法同Transmission

点击Stacks -> Add stack -> 填写Name与脚本 -> Deploy the stack启动即可。

利用docker-compose部署,部署方法同Transmission
  1. 在自己确定好的存储qb脚本的目录下,创建docker-compose.yaml脚本,写入上面脚本

  2. 执行启动命令

使用

使用账户密码进行登录,默认admin,adminadmin,后续进入设置可更改。

操作及设置界面,可改中文及登录密码用户等等。

对比

  1. qBittorrent连接性好 , 连接速度和下载速度都比较快 , 适合抢占上传先机 , 但它对系统资源的占用也更高 。

  2. Transmission的稳定性更好 , 在平时下载时速度浮动是这几款软件中最小的 , 适合保种 。

  3. 虽然使用这两款软件可以满足下载需求,但是因为迅雷的用户基数以及迅雷的恶心运营模式,会员状态下热门资源它的速度确实比这些软件快。下载大比拼相同的资源 , 开通会员的情况下 , 迅雷可以满速下载 ,但速度波动明显 ,基本可以保持20-33MB/s , qBittorrent和Transmission的速度虽然不是最快,但很稳。

峰值下载速度对比:迅雷>Transmission>qBittorrent
下载稳定性:qBittorrent>Transmission>迅雷

最后

  1. 不管Portainer还是docker-compose部署,如果没有对应镜像,都会自动下载,如果自己替换为原生命令部署,记得先拉取镜像。
  2. qb还有其它进阶功能,比如资源搜索,后续我会在Jackett集成中记录这部分扩展。