本文最后更新于 2022年04月8日
这篇文章也是值得买的值友提醒我的,一开始我也没注意到。关于Sonarr Radarr与下载器的硬链接hardlinking
,其实并不难理解,实现起来也非常简单,但是有一定的文件夹层次要求,比如我就无法实现
硬链接hardlinking
介绍
从英文翻译而来-在计算中,硬链接是将名称与文件系统上的文件相关联的目录条目。所有基于目录的文件系统都必须至少具有一个硬链接,为每个文件指定原始名称。术语“硬链接”通常仅在允许同一文件使用多个硬链接的文件系统中使用。
没有看懂也没关系,总之就是帮你省地方,省磁盘IO,一个文件可以出现在多个地方,但只占用一次空间,如果没有启用硬链接,就会执行 复制粘贴/剪切 操作
如何实现docker中Sonarr Radarr 与下载器的硬链接
在linuxserver/sonarr
的介绍中有说明
我简单的说一下,这段不难理解
如果要实现docker中Sonarr Radarr 与下载器的硬链接,对于目录层级是有要求的,否则实现起来会很麻烦,挂载磁盘根目录为最省事办法
不过,对于群晖来说,docker挂载磁盘根目录是很麻烦的一件事,所以最好的方法就是,整理好自己的影视目录,把所有的影视文件夹分类放到一个大影视文件夹,同时,下载文件夹也放到影视文件夹
注意:下载器的下载位置必须和影视库在一个磁盘
影视 -电影 -电视剧 -动画片 -综艺 -downloads
整理好影视文件夹后,nas下的qbittorrent、sonarr,radarr docker容器这样配置挂载文件夹
注意:我这里qbittorrent为什么会挂载incomplete,因为我是有SSD下载盘,下载完成后会从SSD转到HDD,你们没有的话,就不需要设置挂载incomplete
qbittorrent下载位置,设置为/影视/downloads/
首先勾选显示高级选项,具体设置如图,可以只看Radarr,因为是中文的
设置->媒体管理->使用硬链接代替复制
根目录
ssh进群晖,获取卷路径
cd volume # 会显示所有的卷,选取你影视资料的卷 # 比如我的是 /volume2/存储池2/
删除sonarr和raderr还有qBittorrent容器,在终端里用命令创建这三个容器,创建的时候把地址填上
# 例 docker create \ --name=sonarr \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=Asia/Shanghai \ -p 8989:8989 \ -v /volume2/存储池2/影视:/影视 \ --restart unless-stopped \ linuxserver/sonarr
这样,sonarr和raderr还有qBittorrent容器挂载的卷的最上级都是/volume2/存储池2/影视
,就可以实现硬链接了
Remote Path Mappings
非必要
如果你的sonarr和qbittorrent下载路径区别很大,sonarr无法在对应的下载目录找到媒体文件,那么就会从qbittorrent的服务器上下载下来,这里的Remote Path Mappings指的是,下载任务在qbittorrent里的实际地址
Remote Path Mappings配置
Settings
->Download Clients
里添加Remote Path Mappings
填写刚才获取的卷地址,还有你qBittorrent下载机的IP地址(docker qBittorrent推荐使用host网络模式,性能更好。桥接网络模式,ip请填写172.17.0.1
)
qBittorrent的下载路径如下
/影视/downloads/
这样,硬链接的设置就结束了
2021.08.15日更新
如果不想挂载磁盘跟目录,还有一个办法,就是提前共有目录
举例:比如我的目前的设置,所有的影视都放在影视文件夹下
影视文件夹下存在如下文件夹
影视 -电影 -电视剧 -动画片 -综艺 -downloads
这样的话,Sonarr、Radarr还有qBittorrent只用挂载 影视 文件夹即可,-v /volume2/存储池2/影视:/影视
还不懂的话,就在多看看docker-compose.yml
version: "3" services: # qbittorrent,推荐使用 host 网络模式,性能更好,少一层nat # 并且后面 下载器IP地址填写简单,填写 172.17.0.1 即可 # 注意:所有的UID,GID,要根据你的实际情况填写,不懂就都填写 0 # volumes 下的存储位置,请根据的实际情况修改 qbittorrent: image: linuxserver/qbittorrent:latest container_name: qbittorrent environment: - PUID=1026 - PGID=100 - TZ=Asia/Shanghai volumes: - /volume1/docker/qbittorrent:/config - /volume2/存储池2/影视:/影视 network_mode: host restart: unless-stopped jackett: image: linuxserver/jackett:latest container_name: jackett environment: - PUID=1026 - PGID=100 - TZ=Asia/Shanghai volumes: - /volume1/docker/jackett:/config ports: - 9117:9117 restart: unless-stopped radarr: image: linuxserver/radarr:latest container_name: radarr environment: - PUID=1026 - PGID=100 - TZ=Asia/Shanghai volumes: - /volume1/docker/radarr:/config ports: - 7878:7878 restart: unless-stopped # 需要两个 sonarr 的同学,再添加一个sonarr容器即可,记得更改 名字和端口映射 sonarr: image: linuxserver/sonarr:latest container_name: sonarr environment: - PUID=1026 - PGID=100 - TZ=Asia/Shanghai volumes: - /volume1/docker/sonarr:/config ports: - 8989:8989 restart: unless-stopped emby: image: emby/embyserver container_name: embyserver environment: - UID=1026 # The UID to run emby as (default: 2) - GID=100 # The GID to run emby as (default 2) - TZ=Asia/Shanghai - GIDLIST=100 # A comma-separated list of additional GIDs to run emby as (default: 2) volumes: - /volume1/docker/emby:/config - /volume2/存储池2/影视:/影视 ports: - 8096:8096 # HTTP port devices: - /dev/dri:/dev/dri # VAAPI/NVDEC/NVENC render nodes restart: unless-stopped # 自动更新docker镜像,可选,建议开启 watchtower: image: containrrr/watchtower container_name: watchtower restart: unless-stopped environment: - TZ=Asia/Shanghai volumes: - /var/run/docker.sock:/var/run/docker.sock command: --cleanup --interval 7200 # 网络方面,网络访问不通畅的可以用小猫咪,懂的用,不懂的请勿操作 # clash: # image: dreamacro/clash-premium # container_name: clash # restart: unless-stopped # network_mode: host # volumes: # - /volume1/docker/clash:/root/.config/clash
其实弄起来还是非常简单的,重点在于你的影视的存放,像我一样的媒体存放方式,直接挂载 影视文件夹就可以了
本文断断续续的一直没有写完,主要原因是有相关需求的人应该很少,并且太折腾了,最终能写完还是不想让前面写的那么多浪费了,也想把高阶教程-追剧全流程自动化给尽量完善,这一套工具链用的越久,越顺手,sonarr的快速迭代也添加了更多功能,值得长期的用下去
PS1
很多人会好奇,为什么会有两份文件
看具体情况,因为使用了硬链接,如果你在做种,那么文件会会出现在两个位置
如果你在qb里设置是不做种,那么文件只会在一个位置,就是你sonarr和radarr指定导入的文件夹里
原文链接:https://sleele.com/2020/08/31/sonarr-radarr-qbittorrent-%E7%A1%AC%E9%93%BE%E6%8E%A5%E8%AE%B2%E8%A7%A3/