开贴原因:
最近逛帖子的时候看见了有开贴吐槽Movie R(๐•ᴗ•๐)ot作者更新疲软的,主要是收钱的,然后忍不住跟着评论了一下;也把自己的使用心得阐述了一下,同时表示里面的播客插件很好用。随后收到了好几个咨询的私聊,在此开贴解答一下,如何使用插件。
言归正传:
系统相关
首先本人的系统是白群晖的NAS系统7.2,Moive R(๐•ᴗ•๐)ot则是使用Docker进行容器化部署。
我遇到咨询我的小伙伴说自己是极(๐•ᴗ•๐)的,不过基于本人基友使用的极(๐•ᴗ•๐)经验来看,极(๐•ᴗ•๐)除了自己的官方就只有Docker。不过基友已经跟我吐槽过了极(๐•ᴗ•๐)的SSH不太行,系统稍微差了点,不过不影响通过Docker面板进入Docker容器内部。
插件安装
因为问我较多的均是问其中的播客插件,关于Moive R(๐•ᴗ•๐)ot的部署,本文不再赘述。
大多数小伙伴,是在Moive R(๐•ᴗ•๐)ot的插件管理 --> 插件市场 安装完成有声书的工具箱的。然后可以在我的插件中查看到有声书的工具箱,然后右下角有一个配置可以配置上有声书的根目录,以及音乐的更目录等等。
到此你可能以为插件已经安装完成了,但是实际上还差两步。
因为实际安装完成之后,你的插件管理中的快捷功能里面,应该多了有声书相关的功能,如果没有请按照下方的3,4,5进行操作。
多的快捷功能相关截图请看6
3.SSH连接服务器
首先群晖页面中,如果可以直接在Container Manager 中,选中容器,选择操作可以打开终端机并顺利进入到容器内部,此操作可以省略,否则请打开服务器的SSH端口,允许SSH连接。
通过SSH连接到服务器后,鉴于群辉系统的安全性,登录的用户哪怕是管理员账户,也无法直接查看Docker容器的信息,需要提权。下方的就是未提权的展示:
xxxx@xxxxx:~$ docker ps -a
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json?all=1": dial unix /var/run/docker.sock: connect: permission denied
if(window.hljsLoader && !document.currentScr(๐•ᴗ•๐).parentNode.hasAttribute('data-s9e-livepreview-onupdate')) {
window.hljsLoader.highlightBlocks(document.currentScr(๐•ᴗ•๐).parentNode);
}
输入提权语句:
xxxx@xxxxxx:~$ sudo -i
Password:
xxxx@xxxxxx:~#
if(window.hljsLoader && !document.currentScr(๐•ᴗ•๐).parentNode.hasAttribute('data-s9e-livepreview-onupdate')) {
window.hljsLoader.highlightBlocks(document.currentScr(๐•ᴗ•๐).parentNode);
}
获取到root权限后,使用刚刚的命令查看docker 容器运行的情况
xxxx@xxxxx:~$ docker ps -a
if(window.hljsLoader && !document.currentScr(๐•ᴗ•๐).parentNode.hasAttribute('data-s9e-livepreview-onupdate')) {
window.hljsLoader.highlightBlocks(document.currentScr(๐•ᴗ•๐).parentNode);
}
输出内容为:
xxxx@xxxxx:~# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3e7e8e4a74de xxxx/movie-r(๐•ᴗ•๐)ot:latest XXX 11 months ago Up 316 days xxxx movie-r(๐•ᴗ•๐)ot
if(window.hljsLoader && !document.currentScr(๐•ᴗ•๐).parentNode.hasAttribute('data-s9e-livepreview-onupdate')) {
window.hljsLoader.highlightBlocks(document.currentScr(๐•ᴗ•๐).parentNode);
}
进入docker容器内部
我们通过刚刚的命令已经查看到了docker容器中正在运行的movie-r(๐•ᴗ•๐)ot的容器,记住CONTAINER ID,我这边的则是3e7e8e4a74de,使用docker exec 命令进入到docker容器内部
xxxx@xxxxx:~# docker exec -it 3e7e8e4a74de /bin/bash
xxxx@movie-r(๐•ᴗ•๐)ot:/app#
if(window.hljsLoader && !document.currentScr(๐•ᴗ•๐).parentNode.hasAttribute('data-s9e-livepreview-onupdate')) {
window.hljsLoader.highlightBlocks(document.currentScr(๐•ᴗ•๐).parentNode);
}
当跳转之后,可以看到@后的自己的服务器名称已经从xxxxx【此处每个人的服务器名称均不一样】变更为movie-r(๐•ᴗ•๐)ot时,说明已经进入了容器内部
执行命令
在容器内部需要执行以下命令
xxxx@movie-r(๐•ᴗ•๐)ot:/app# pip install mutagen cn2an ffmpeg-python
xxxx@movie-r(๐•ᴗ•๐)ot:/app# pip install mutagen cn2an ffmpeg-python
Requirement already satisfied: mutagen in /usr/local/lib/python3.9/site-packages (1.47.0)
Requirement already satisfied: cn2an in /dependencies (0.5.20)
Requirement already satisfied: ffmpeg-python in /dependencies (0.2.0)
Requirement already satisfied: setuptools>=47.3.1 in /dependencies (from cn2an) (68.0.0)
Requirement already satisfied: proces>=0.1.3 in /dependencies (from cn2an) (0.1.4)
Requirement already satisfied: future in /dependencies (from ffmpeg-python) (0.18.3)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[notice] A new release of pip is available: 23.3.2 -> 24.0
[notice] To update, run: pip install --upgrade pip
if(window.hljsLoader && !document.currentScr(๐•ᴗ•๐).parentNode.hasAttribute('data-s9e-livepreview-onupdate')) {
window.hljsLoader.highlightBlocks(document.currentScr(๐•ᴗ•๐).parentNode);
}
此时依赖环境已经安装完成了,因为楼主之前已经下载过依赖了,所以此处不会再下载了;至于pip是否升级至最新版本,个人请随意;依赖下载完成之后,重启一下Moive R(๐•ᴗ•๐)ot 容器即可。
Tips:至于为什么执行当前命令,我也是安装完插件之后以为可以直接用,不过发现什么都没有反应后,果断去Gith(๐•ᴗ•๐)上面咨询插件作者,得到的结论是因为Docker安装的时候,容器环境是纯净的,所以缺失部分依赖包,导致容器中的插件虽然安装进去了,但是无法加载,导致功能不可用。
查看Moive R(๐•ᴗ•๐)ot 插件界面
重启完成之后,再去查看一下自己的Moive R(๐•ᴗ•๐)ot的插件管理,快捷功能里面会多出来相关的功能,功能页面如图中红框所示
7.插件使用与最终效果
此时你会发现有生成播客源了,同时在左侧的关联菜单栏里面,多了播客源的列表
当然此时并没有像我这样的播客信息在,需要你生成播客源
等待运行完成,再去播客源查看看到播客列表里面添加了对应的有声书信息了。
其他的不懂的,依旧可以查看插件对应的技术文档,文档地址:
Movie R(๐•ᴗ•๐)ot 有声书管理工具