Unraid保姆级教程 Dokcer篇(一)——qBittorrent
前言
自从我的威联通TVS-951N突然故障以后,不论是工作文件同步、手机相册备份,还是娱乐应用如Jellyfin等都没法使用,十分不便。因而萌生用老电脑:4790K-32G来建个NAS的想法。
NAS系统的选择就不展开说了,Unraid有官方中文,支持Docker,基本满足家用数据存储和应用的需求,缺点是速度一般只有100MB/S左右,峰值200MB/S,买了块4个2.5G口的网卡,差不多也能跑满了。
新手可以找试用,想要安装正版请访问Unraid | 主页,右上角选择中文,有转正教程,目前仍有优惠,记得提前备份配置。
准备工作,启用Docker
本来准备直接讲qB的docker安装,不过作为本系列第一篇,还是讲一下如何启用docker。
(1)新建container_config共享目录
这里新建一个共享文件夹,用于保存docker配置文件。docker在升级、重装以后,内部数据是完全更新的,将配置文件保存在docker外部,就可以放心升级了。
包含的磁盘建议选择准备长期在线的磁盘,但不建议选择下载盘。这样启用磁盘休眠后,就只有这块磁盘和下载盘运行,其他磁盘按需启动。
(2)页面上点击“设置”-“Docker”
(3)右上角打开高级视图
注意标红的几个选项:
Docker data-root:docker文件的目录结构,可以选择:btrfs vDisk、xfs vDisk和目录;前两个为虚拟磁盘,固定大小,可后期修改。作为All in One部署,大概率会超出默认的20G,比如我现在Jellyfin的metadata就50G,所以我这里选择了“目录”。
Docker Directory:docker文件的保存路径,默认为/mnt/user/system/docker/docker/
默认应用数据存储位置:docker配置保存的位置,默认在appdata文件夹,我们这里选择自建的container_config文件夹。
Docker custom network type:docker自定义网络类型,有两种:macvlan和ipvlan,一般简单的网络我们使用macvlan即可,详细区别可搜索macvlan ipvlan。
主机访问自定义网络:关系到docker能否和宿主机(unraid)互相访问,或者vpn进来能否访问宿主机(unraid)界面和资源,根据需求打开。
保留用户自定义网络:上面提到了我们新建了一个macvlan网络,如果不启用此项,会在重启后清除自定义网络。
接口上IPv4自定义网络br0:当要使用家庭网络IP来与其他用户、设备通信时,需要打开此项才能配置。(如物联网管理Home Assistant必须与物联网同网段,不然搜不到设备。)
(4)配置完成后,点击“应用”、“完成”
(5)新建macvlan
点击右上角终端按钮,会直接登录root账号,这里我们通过命令行创建一个docker专用macvlan
确定母网口名称
可以看到我的机器目前使用的是4个网口桥接,默认应该是br0
通过命令行执行ifconfig,也可以看到ip是配置在br0这个桥接口上的。
查看现有docker网络
docker network ls
新建docker网络
新建一个与现有网络不冲突的docker网络
sudo docker network create --subnet=192.168.2.0/24 dockernet
--subnet= :你要新建的ip段
dockernet :新建的macvlan名称
执行完成,再查看现有docker网络
所有准备工作完成。
安装qBittorrent
(1)点击“DOCKER”,选择添加容器
也可以进入“应用”中搜索qBittorrent,不过访问速度较慢,知道存储库的,可以直接添加。
图上可以看到我很多docker是没有配置外部地址和端口映射的,这是因为用Nginx Proxy Manager做了反向代理,NPM可以直接访问我们新建的这个macvlan的地址,就不需要占用宿主机的端口了,后面会讲配置办法。
(2)配置安装选项
存储库: lscr.io/linuxserver/qbittorrent:latest
这个是官方地址,如果不是x86平台,记得去dockerhub查看对应版本,替换"latest"
还有第三方优化的qBittorrent Enhanced Edition,有屏蔽迅雷吸血、订阅tracker地址等功能,推荐
johngong/qbittorrent
superng6/qbittorrentee
因为我主要挂PT,是不需要其他功能的,直接使用官方源。
网络类型:可以看到我们自建的test网络,不过这里由于要减少bt软件的nat层数,并使用路由器的upnp功能,所以直接选择“custome:br0 -- lan”,这样就能配置和路由器同段的IP。
(3)添加路径、端口
如果你通过自带“应用”搜索并安装的,会自动添加参数,否则请手动添加。
开放端口WebUI:8080(TCP)
开放端口TCP:6881
开放端口UDP:6881
设置下载路径/downloads
参照(1)新建container_config共享目录,创建一个下载的保存路径,如果有单独的下载盘,请选择仅包含下载盘。
/mnt/user/downloads/
设置变量WEBUI_PORT:8080
注意,这里是配置参数“WEBUI_PORT”,需要与“WebUI”端口一致,方能访问成功。
设置配置文件存储路径
这里选择之前创建的container_config文件夹下,新建文件夹
/mnt/user/container_config/qbittorrent/
映射账户权限PUID、PGID
nobody的UID为99,users组的GID为100,避免过高权限。
设置UMASK
umask = 022时,新建的目录 权限是755 ,文件的权限是 644。
这样一般用户没办法在downloads文件夹内新增、删除,避免造成软件执行错误。
(4)点击“应用”,等待下载、安装。
安装完成后,可以看到多了一个docker应用,可以使用ip:8080访问,也可以点击图标,选择“WebUI”访问。
总结
第一次写保姆级的说明,可能有不清楚的地方,请评论区友善探讨。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~























阿咸老哥
我的unraid日志里面有“docker0:port1(veth0133525)entered blocking state”,应该是docker的网络没有设置好?
校验提示文案
饭否2223
校验提示文案
侒迪
校验提示文案
arg10
校验提示文案
斯格瑞特
parent参数是指定母接口
校验提示文案
伯母我是你女儿的男友
校验提示文案
吉辰
校验提示文案
jibwf
校验提示文案
当前用户已注销
校验提示文案
月映碧落苍穹
校验提示文案
司墨
校验提示文案
Sh0cky
校验提示文案
值友9527Pro
校验提示文案
李B刀
校验提示文案
值友8113864995
校验提示文案
奶面
校验提示文案
四季韭菜
校验提示文案
荒银大飙客
校验提示文案
yeti_h
校验提示文案
棠溪2022
校验提示文案
值友8113864995
校验提示文案
李B刀
校验提示文案
值友9527Pro
校验提示文案
Sh0cky
校验提示文案
波拉雷斯
校验提示文案
司墨
校验提示文案
月映碧落苍穹
校验提示文案
棠溪2022
校验提示文案
当前用户已注销
校验提示文案
jibwf
校验提示文案
吉辰
校验提示文案
yeti_h
校验提示文案
荒银大飙客
校验提示文案
伯母我是你女儿的男友
校验提示文案
四季韭菜
校验提示文案
斯格瑞特
parent参数是指定母接口
校验提示文案
arg10
校验提示文案
侒迪
校验提示文案
阿咸老哥
我的unraid日志里面有“docker0:port1(veth0133525)entered blocking state”,应该是docker的网络没有设置好?
校验提示文案
饭否2223
校验提示文案