N1盒子折腾记录:Docker打造N1通用媒体服务器
在最早写的这篇N1折腾文章中,通过Entware环境安装了各种软件,实现下载浏览等媒体服务。经过上次折腾Docker下安装OpenWRT之后,就想是不是可以把这些软件做成一个Docker镜像方便使用,学习了一下不是很复杂,做成了一个镜像,特此分享。
简介
包含 Caddy,FileBrowser,Transmission,提供“BT/PT下载”,“HTTP文件浏览”,“WebDAV”,“文件管理” 服务。WebDAV可配合Potplayer, Nplayer, Kodi等软件用于播放视频。
先上几张效果图。
镜像使用
首先要有Docker,如果是CoreELEC可以直接在插件里面安装。
安装启动
1. 拉取镜像(之前反映有官方仓库下载慢的问题,这里用了ustc的mirror)
docker pull docker.mirrors.ustc.edu.cn/taoskycn/n1-media-server:0.1
2. 生成并后台运行容器,“/var/media/N”为外接存储路径,挂载到Docker内,根据情况自行修改。
docker run -it -d --name N1 -p 1001-1006:1001-1006 -p 51413:51413 --mount type=bind,source=/var/media/N,target=/root/exmedia docker.mirrors.ustc.edu.cn/taoskycn/n1-media-server:0.1 /bin/ash
3. 进入容器字符界面
docker exec -it N1 /bin/ash
4. 启动各个服务
/root/start.sh 执行后再回车
5. 退出容器
exit
6. 如需停止服务,需要进入容器并执行
/root/stop.sh
访问和设置
Transmission Web:http://<N1的IP>:1001,账号密码transmission:transmission,已更换WebUI,配置文件位于`/root/.config/transmission-daemon/settings.json`
Caddy 文件浏览:http://<N1的IP>:1002,账号密码caddy:caddy,显示外接存储下的download目录,配置文件位于`/etc/Caddyfile`
Caddy WebDAV:http://<N1的IP>:1002/webdav,账号密码caddy:caddy,显示外接存储下的download路径。
FileBrowser文件管理:http://<N1的IP>:1003,账号密码caddy:caddy,可在Web界面修改各项设置。
如需外网访问,使用路由器设置端口映射即可,考虑到安全因素,建议修改密码后操作。
注意事项
`docker run`会映射端口,运行前确认端口未被使用。
“51413”为transmission交换数据的端口,如果出现上传速度满等情况,建议映射到公网。
如需手动修改Transmission配置文件,先退出进程。
WebDAV配置
Potplayer
播放列表-新建专辑。(注意:由于Windows文件命名限制问题,可能有包含特殊符号的无法打开)
NPlayer
网络-新建服务器-WebDAV
Kodi
进入文件区-添加视频-浏览-添加网络位置
总结
最小化满足了媒体服务器的需求,并且具有一定的扩展性,比如玩PT的可以配合浏览器插件远程下载,WebDAV也可以在各个终端使用,也可以分享给别人远程浏览(上行带宽要够大)。
还有一些功能没有添加,如Aria2,因为我个人没有这种需求所以暂未考虑;还有Mac上WebDAV必须缓存完才能播放,之前是用的Netatalk做的一个afp(苹果文件传输)服务器,但是这个东西由于目录权限问题(很神奇),也没有成功,有研究过的希望能分享一下。
hifisu
校验提示文案
宇宙大波
校验提示文案
木木饿
校验提示文案
值友5198104731
校验提示文案
值友7065632800
校验提示文案
問道于心
浏览器可以打开
校验提示文案
值友6851650362
mkdir: can't create directory '/media/exmedia/download': Permission denied
/ # /usr/bin/filebrowser: line 1: syntax error: unexpected word (expecting ">">
Activating privacy features... done.
Serving HTTP on port 1002
[!#去看看||[!#去看看||[!#去看看||http://0.0.0.0#!]#!]#!]:1002
[!#去看看||[!#去看看||[!#去看看||http://0.0.0.0#!]#!]#!]:1002/download/
Serving HTTP on port 1003
[!#去看看||[!#去看看||[!#去看看||http://0.0.0.0#!]#!]#!]:1003
FileBrowser打开不了,怎么解决
校验提示文案
問道于心
校验提示文案
别比比了我知道我很帅
是什么意思呀。。。应该如何解决?
校验提示文案
問道于心
校验提示文案
writewindy
校验提示文案
值友3352898186
校验提示文案
再溅就再见
校验提示文案
問道于心
coreelec照你的方法设置后也是无法连接
浏览器可以打开1002和1003进行浏览
校验提示文案
問道于心
校验提示文案
大宽GE
校验提示文案
昵称已经被占用
校验提示文案
川哥_ANOD
校验提示文案
感谢您不要桑心
校验提示文案
值友3938198332
校验提示文案
南方以南xx
校验提示文案
值友7816812671
替换basicauth后面的“/”跟root后面地址相同,也就是“/root/exmedia/download”
校验提示文案
jhxxmui
校验提示文案
問道于心
校验提示文案
問道于心
校验提示文案
大宽GE
校验提示文案
别比比了我知道我很帅
是什么意思呀。。。应该如何解决?
校验提示文案
問道于心
校验提示文案
問道于心
校验提示文案
問道于心
校验提示文案
值友3938198332
校验提示文案
值友6851650362
mkdir: can't create directory '/media/exmedia/download': Permission denied
/ # /usr/bin/filebrowser: line 1: syntax error: unexpected word (expecting ">">
Activating privacy features... done.
Serving HTTP on port 1002
[!#去看看||[!#去看看||[!#去看看||http://0.0.0.0#!]#!]#!]:1002
[!#去看看||[!#去看看||[!#去看看||http://0.0.0.0#!]#!]#!]:1002/download/
Serving HTTP on port 1003
[!#去看看||[!#去看看||[!#去看看||http://0.0.0.0#!]#!]#!]:1003
FileBrowser打开不了,怎么解决
校验提示文案
感谢您不要桑心
校验提示文案
值友3352898186
校验提示文案
問道于心
浏览器可以打开
校验提示文案
問道于心
coreelec照你的方法设置后也是无法连接
浏览器可以打开1002和1003进行浏览
校验提示文案
值友7065632800
校验提示文案
值友5198104731
校验提示文案
木木饿
校验提示文案
宇宙大波
校验提示文案