威联通464c2 docker迅雷下载路径配置

硬件:威联通464c2;

软件:docker cnk3x/xunlei镜像

背景:已经通过docker安装迅雷服务,但默认下载路径在Container路径内,访问不方便;

目的:转移下载路径到共享文件夹,方便用File Station直接访问;

注意:图形化添加的方式失败了,不关心可以直接从命令行设置开始看!!!

首先我们尝试通过图形化界面解决。

通过File Station先准备好共享文件夹路径。作者添加在卷4跟容器文件夹同路径。

然后通过Container Station应用添加容器。

在创建容器的高级设置中,尝试使用存储映射解决问题。但是通过添加卷或者绑定装载主机路径的方式都无法解决,原因见上;通过添加卷的方式,最后实际并未生效。通过绑定装载主机路径的方式,无法添加实际的创建的路径(无法锁定到根目录/share下),所以最后我们通过命令行的方式解决。

首先在QNAP Qfinder中运行ssh连接,之后在工具(例如putty)中连接威联通。

ssh 你的用户名@威联通局域网ip

docker image 

确定已经有迅雷镜像。(因为作者之前安装过所以已经有了,没有需要手动下载并docker load加载)

运行下面的命令带起迅雷镜像服务。

docker run -d \

  --name xunlei \

  --privileged \

  -v /share/CACHEDEV4_DATA/xunlei/downloads:/xunlei/downloads \

  -v /share/CACHEDEV4_DATA/xunlei/data: /xunlei /data \

  -e TZ="Asia/Shanghai" \

  -p 2345:2345 \

  --restart unless-stopped \

  cnk3x/xunlei:latest

命令解释

1. docker run

  • 用来创建并运行一个容器。

2. -d

  • 后台模式 (detached mode)
  • 容器启动后不会绑定你的终端,命令会立即返回,你的容器在后台运行。
  • 好处:NAS 重启或关闭终端不会影响容器运行。
  • 如果你用 -it 代替 -d,就是“交互终端模式”,容器会绑定你的终端,终端关闭容器就停止。

3. –name xunlei

  • 给容器命名为 xunlei,便于管理,比如:
    • docker stop xunlei
    • docker logs xunlei
  • 如果不指定名字,Docker 会随机生成一个名字。

4. –privileged

  • 特权模式
  • 容器几乎拥有宿主机所有权限,可以访问所有设备、执行挂载操作等。
  • 这里主要是解决迅雷容器挂载 /downloads 和 /data 时权限问题(避免 “operation not permitted” 错误)。
  • 风险:容器拥有非常高权限,不建议运行不可信镜像。

5. -v /share/CACHEDEV4_DATA/xunlei/downloads:/downloads

6. -v /share/CACHEDEV4_DATA/xunlei/data:/xunlei/data

  • 挂载卷 (volume)
  • 把 NAS 上的目录映射到容器内部:
    • /share/CACHEDEV4_DATA/xunlei/downloads → 容器 /xunlei/downloads (下载文件存放)
    • /share/CACHEDEV4_DATA/xunlei/data → 容器 /xunlei/data (程序数据、配置、历史任务等)
  • 好处:容器删掉重建后,数据仍然保留。

7. -e TZ=”Asia/Shanghai”

  • 设置时区环境变量
  • 容器内的时间会用北京时间。
  • 不设置的话,默认是 UTC,日志时间可能对不上。

8. -p 2345:2345

  • 端口映射
  • 把宿主机的 2345 端口映射到容器的 2345 端口,用于访问迅雷 Web 界面。
  • 格式:宿主机端口:容器端口
  • 例子:浏览器访问 http://NAS_IP:2345 就能打开迅雷管理界面。

9. –restart unless-stopped

  • 自动重启策略
  • 容器崩溃或 NAS 重启时自动启动
  • unless-stopped:除非手动停止,否则总会重启
  • 其他策略:
    • no :不自动重启
    • always :总是重启(手动停止也会再启动)
    • on-failure :仅在错误退出时重启

10. cnk3x/xunlei:latest

  • 镜像名 + 标签
  • cnk3x/xunlei 是 Docker Hub 上的迅雷镜像
  • latest 是标签(一般指最新版本)

总结:这条命令会让迅雷容器在后台运行,自动重启,使用北京时间,并把下载文件和配置数据挂载到指定路径上,同时拥有特权模式避免挂载错误。注意

/share/CACHEDEV4_DATA/xunlei/downloads才是DataVol4中共享文件夹xunlei的实际系统路径!!!!!!切记。

运行成功之后,就可以看到Containers Station中出现迅雷容器。

点击操作,编辑,为容器添加局域网ip地址,方便管理。

可以修改默认端口,默认使用的是2345。

默认的NAT接口可以用威联通中的浏览器进行访问,但并不方便。

点击添加,选择添加bridge接口,选择自己威联通的局域网ip接口即可,这样默认使用dhcp,访问迅雷管理界面的ip地址会变化,可以使用静态ip地址来固定,主要不要与局域网中其他设备的ip地址冲突。

添加完成后可以用浏览器访问

局域网ip地址:2345

访问迅雷管理界面,用手机迅雷登录即可。

这样运行的迅雷容器,不像直接使用图形化界面配置的容器,可以直接连接终端。

如果想进入容器终端调试,可以用:

docker exec -it xunlei /bin/bash

参考链接

https://hub.docker.com/r/cnk3x/xunlei

https://www.qnap.com.cn/zh-cn/how-to/faq/article/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8-ssh-%E8%AE%BF%E9%97%AE-qnap-nas

船长

发表评论