黑科技——通过docker+xware在群辉DSM 6.0系统实现迅雷远程下载
2016-09-10 00:49
369 查看
家里装了一个群辉的NAS用于数据存储、备份等。受益于群辉良好交互的DSM系统,家用NAS不需要太多的专业技能也可以轻松玩转起来。家庭数据的备份,一个大头就是电影、视频等的存储。在DSM5.4以前,DSM系统原生支持迅雷远程下载,这给用户提供了相当大的便利,直接将视频下载到NAS系统中,然后在家里任何一台联网设备上直接播放。但是出于某些原因,迅雷跟群辉的合作关系终止,所以DSM5.4开始即不在支持迅雷远程下载,相应软件也遭下架。网上有不少如果从终端切换到Linux
root权限下修改相应配置文件,安装软件,最终实现支持迅雷远程下载的教程。但是这些步骤相当繁琐,对Linux没有一定了解的用户可能即使面对一篇有详细截图的教程也不知道在干嘛。就算是Linux老司机看了也觉得有点烦琐。但是这些都不要紧,现在这里有一个更简单的方式,谁叫咱们是玩儿docker的呢。
2)由于官方docker hub间歇性被墙的原因,不一定每次都能搜索到image,如下图所示:
3)这时你可以多试几次,耐心够好,最终总归是能成功的,如下图所示:
可以看到结果同官方hub的搜索结果是一样的。
4)选择你要下的image,然后点击download,这是Image栏中,就可以看到image开始下载了。如果你没有配代理的话,这个时候多半也是会失败的:)。博主尝试了多次都是下图的结果,你会看到消息栏有提醒,但是很不幸不是成功的喜报....:
5)这个时候博主偷懒选择了setting尝试设置docker的registry,尝试添加国内时速云的registry。但是不幸的时候,任然不能找到image。如下图所示,点击setting->配置registry->保存新registry后选中registry,点击use。
博主比较懒,没有尝试去给DSM配置代理(暂时没有这个需求)。然后博主很不淡定的打开了DSM的ssh,control panel -> Terminal & SNMP -> Enable SSH service。 然后ssh过去直接docker pull了。
这个时候再回到DSM 中,Docker image下就可以看到已经有xware的image了。
2)“Advanced setting”中所有的设置都可以直接使用默认设置,除了需要为容器挂载一个外部路径用于存储下载文件外。抛开Docker的使用方式,挂载外部卷最直观的好处就是不用再倒腾就可以在DSM host中看到下载的文件了(迅雷远程下载默认下载路径为TDDOWNLOAD)。至于从docker层面为什么这里要挂载外部持久存储不在本文讨论范围,所以这里就不详细解释了。
选择一个文件夹(本示例使用/Download/xunlei),以及挂载到容器内的路径(迅雷远程下载默认是下载到/app/TDDOWNLOAD)
3)运行容器,查看log获取迅雷远程“active code”
运行容器后,可以在Container中查看到正在运行的容器的状态。选择容器,然后点击“detail” --> log 查看容器运行过程中的日志。xware中会输出迅雷远程的active code“。记住”The Active Code is:" 后面的六位字符。
root权限下修改相应配置文件,安装软件,最终实现支持迅雷远程下载的教程。但是这些步骤相当繁琐,对Linux没有一定了解的用户可能即使面对一篇有详细截图的教程也不知道在干嘛。就算是Linux老司机看了也觉得有点烦琐。但是这些都不要紧,现在这里有一个更简单的方式,谁叫咱们是玩儿docker的呢。
1. 安装docker
package center中搜索“docker”,选择安装。如下图所示:2. 运行docker,下载镜像
1)下载完成后,运行docker,左侧列表中选择Register, 然后在搜索框中搜索“xware”, 如下图所示:2)由于官方docker hub间歇性被墙的原因,不一定每次都能搜索到image,如下图所示:
3)这时你可以多试几次,耐心够好,最终总归是能成功的,如下图所示:
可以看到结果同官方hub的搜索结果是一样的。
4)选择你要下的image,然后点击download,这是Image栏中,就可以看到image开始下载了。如果你没有配代理的话,这个时候多半也是会失败的:)。博主尝试了多次都是下图的结果,你会看到消息栏有提醒,但是很不幸不是成功的喜报....:
5)这个时候博主偷懒选择了setting尝试设置docker的registry,尝试添加国内时速云的registry。但是不幸的时候,任然不能找到image。如下图所示,点击setting->配置registry->保存新registry后选中registry,点击use。
博主比较懒,没有尝试去给DSM配置代理(暂时没有这个需求)。然后博主很不淡定的打开了DSM的ssh,control panel -> Terminal & SNMP -> Enable SSH service。 然后ssh过去直接docker pull了。
sudo docker pull index.tenxcloud.com/soartou/docker-xware
这个时候再回到DSM 中,Docker image下就可以看到已经有xware的image了。
3. 运行容器
1)选中容器,然后点击“Launch”将弹出如下配置框,根据提示为容器取一个合适的名字,然后选中“Advanced setting”2)“Advanced setting”中所有的设置都可以直接使用默认设置,除了需要为容器挂载一个外部路径用于存储下载文件外。抛开Docker的使用方式,挂载外部卷最直观的好处就是不用再倒腾就可以在DSM host中看到下载的文件了(迅雷远程下载默认下载路径为TDDOWNLOAD)。至于从docker层面为什么这里要挂载外部持久存储不在本文讨论范围,所以这里就不详细解释了。
选择一个文件夹(本示例使用/Download/xunlei),以及挂载到容器内的路径(迅雷远程下载默认是下载到/app/TDDOWNLOAD)
3)运行容器,查看log获取迅雷远程“active code”
运行容器后,可以在Container中查看到正在运行的容器的状态。选择容器,然后点击“detail” --> log 查看容器运行过程中的日志。xware中会输出迅雷远程的active code“。记住”The Active Code is:" 后面的六位字符。
4. 登录迅雷远程并绑定设备
登录迅雷远程,并通过Active Code绑定设备,然后开始下载。下载完成后当前面挂载的/Download/xunlei目录下找下载完成的文件。相关文章推荐
- 通过UniObject的标准化协议,实现即插即用式的系统通信
- 用J2SE6.0试用 - 用新增API实现TrayIcon系统托盘图标
- PHP 通过WMI来实现获取客户端计算机硬件及系统信息:
- linux下通过dup2标准输出重定向查看系统进程方法(也是popen函数实现的方法)
- linux下通过字符模块实现类似ps命令的查看系统进程方法
- VC下通过系统快照实现进程管理
- 通过更改字库文件组件及相关设置实现对NK进行裁剪(尤其适用中文简体系统)
- 通过Remobjects+ReportBuilder+ASP.NET实现B/S版的报告系统
- 通过编写rcS文件实现系统启动后进行一系列初始设置
- 通过SAPjco + sapidoc3 来实现第3方系统和SAP R3系统进行IDOC的双向传送数据
- 通过inf文件让Win XP实现自动维护 [可实现系统定时任务]
- [个人推荐]通过Erlang轻松实现可伸缩性,容错性,和负载平衡的大规模多人在线系统[zz from 神宗冥浩]
- 通过Visual studio 2005 中的web.sitemap实现OUTLOOK风格的系统菜单
- 通过更改字库文件组件及相关设置实现对NK进行裁剪(尤其适用中文简体系统)
- linux服务器通过设置mysql,apache为系统服务,实现开机启动
- 通过sql server的作业调度+存储过程来实现系统定时任务的方法
- 通过Visual studio 2005 中的web.sitemap实现OUTLOOK风格的系统菜单
- 收藏《CnForums和已有系统的整合方案》《通过IViewObject接口,取浏览器的图象,实现SNAP 》《SNAP的另类实现,采用iFRAME,内嵌框架的形式.》等
- 通过更改字库文件组件及相关设置实现对NK进行裁剪(尤其适用中文简体系统)(转载)
- Code4Fun: 通过XML模板系统实现对象的灵活序列化