本内容来源于@什么值得买APP,观点仅代表作者本人 |作者:川川川川桑 ⏹ 本文目录
本文讲解的比较细,重点在看懂代码并学会基础部署,适合想自己摸索部署Docker的新手,建议收藏下。 不同的docker可能会涉及参数变更,以后还是会出针对性的抄作业教程,欢迎关注。 ⏹ Docker介绍开始教学前,我们需要先知道Docker是什么。 1️⃣ 什么是Docker? 简单点说,Docker是介于传统软件和虚拟机中的一种应用形态。 Docker可以实现的功能从创建硬件虚拟完整系统到实现简单脚本都可以,丰俭由人,并且可以直接复制运行环境,部署起来非常方便。 2️⃣ Docker去哪儿找? 全球最大的社区是DockerHub,里面应用繁多,只有你想不到,几乎没有找不到的Docker。
各家NAS搜索和拉取Docker的库也是DockerHub,不管是哪家NAS的Docker管理器都可以跳转到DockerHub对应的页面查看部署文档。 如果想查看详细的代码,开源Docker一般都会关联到GitHub的项目地址,方便玩家fork之后进行二次开发。 3️⃣ 不同版本是否有区别? 当然有区别了,众所周知NAS的CPU分为X86和ARM两种,ARM版本还有可能细分到32位和64位,需要我们根据实际设备去正确选择,下图表示这个映像适用所有平台。 除了按照平台区分,更新频繁的Docker可能还会分为稳定版本和测试版本,一般用稳定版就好了。 我们部署的时候正常用Latest就好了,也就是最新版本,一般默认的最新版是X86。 如果你使用的是ARM设备且latest映像不支持ARM,可以在Tags里面搜索关键词ARM,找到合适的标签自行修改。 4️⃣ 不同部署方式有啥影响? 没影响,不管是SSH命令行部署的还是通过自带管理器部署,正常用就好了,查看和修改都行。 SSH登录后可以使用ps命令查看Docker的状态:
即可查看现在运行的Docker状态,包含运行状态、端口号、创建时间等等。 各家NAS自带的Docker管理器也能查看状态,比上面的ps命令看起来更直观一些。 ⏹ Docker代码组成演示案例为tiny media manager,是削刮电影信息的Docker。
项目首页下拉,看到docker run -d开头的一大段就是docker基础部署命令。 只要弄明白这段代码的意义就知道如何部署,本段讲解这段代码内分别对应的意义。 1️⃣ 映像版本 在我们拉取配置Docker的时候,选择正确的标签非常重要,在标准的部署命令中一般在最后一行。
首先访问项目地址,点击Tags即可查看Docker有哪些版本。 这里可以看到有latest和test两个标签,分别对应的是最新正式版本和测试版本,都是常用英文,应该都能看的懂吧。 下图可以看到适用的平台只是linux的amd64,如果你的设备是ARM平台则无法使用。 如果想部署适合你设备的正确版本,映像后缀需要选择对,单独拉取Docker映像的命令是docker pull,下图可以看到这两个版本拉取代码的区别在:后面。 如果你啥也不确认,部署的时候不要手动填版本标签,默认是最新! 如果你啥也不确认,部署的时候不要手动填版本标签,默认是最新! 如果你啥也不确认,部署的时候不要手动填版本标签,默认是最新! 2️⃣ 端口映射 在部署命令中-p开头的就是端口相关,目的是将docker内的端口映射到NAS的端口,转发关系见下图。
我们可以看到这里tmm的命令中有两条,也就是需要映射两个端口出去,关于端口的说明在项目页面一般都有说明,网页搜索port就能看到了。 根据作者说明,tmm这里用到的两个端口,5800用于网页访问,5900用于VNC访问, 如果你搞不懂就跟着抄,正常不需要修改。 如果后面Docker端口是80、8080或者443,前面的NAS端口一定要改成其他未使用的端口,如52052、23344这些不常用的端口号! 如果后面Docker端口是80、8080或者443,前面的NAS端口一定要改成其他未使用的端口,如52052、23344这些不常用的端口号! 如果后面Docker端口是80、8080或者443,前面的NAS端口一定要改成其他未使用的端口,如52052、23344这些不常用的端口号! 3️⃣ 文件夹挂载 在部署命令中-v开头的就是文件夹相关,目的是将原本必须在docker内的创建文件夹换成NAS现有的文件夹。
每个文件夹的作用在项目地址都有说明,这里的/config用于存放配置文件,/media用于存放电影文件。 怎么查看NAS现有的文件夹路径具体看下文讲解吧,不同的NAS都有区别,并不是统一的方法。 确认NAS文件夹路径后,必须要把挂载目标改成实际的路径! 确认NAS文件夹路径后,必须要把挂载目标改成实际的路径! 确认NAS文件夹路径后,必须要把挂载目标改成实际的路径! 4️⃣ 环境变量 在部署命令中-e开头的是环境相关,目的是方便用户自己定义一些参数,比如账号密码时区这些,比较复杂,不懂的话不要乱改。
每个文件夹的作用在项目地址都有说明,这里默认的对应的是使用组(GROUP_ID)、使用人ID(USER_ID)和时区(TZ)。 没事别动它!除非你看懂了规则! 没事别动它!除非你看懂了规则! 没事别动它!除非你看懂了规则! ⏹ 各品牌NAS的Docker部署这里按照通用和不同品牌NAS系统区分,分开讲解。 1️⃣ 通用SSH命令行部署流程 演示案例为transmission,这是个经典的下载工具。
现在NAS系统的内核基本都是Linux5.10,威联通、群晖、爱速特等系统都可以使用SSH进行Docker的部署,方法一样。 使用设备为威联通的264C,系统为最新的QTS 5.0。 首先先确认你的NAS打开了SSH功能,在系统配置里面找一下,默认端口号是22,所有NAS一样。 接着看一下NAS的文件夹路径。 威联通的比较特殊,打开之前创建的Docker,可以看到路径都是/share开头。 找到想挂载的文件夹,这里transmission文件夹,点击属性。 威联通显示的路径是/Container(文件夹的上一级),这是不对的路径,我们需要在前面和后面都加上正确的路径,前面加/share(固定的根目录),后面加/transmission(实际文件夹),综合之后就是:
确认SSH开启和文件夹路径后使用SSH登录,我使用的SSH工具是FinalShell,页面友好,新手基本都能看的懂,唯一缺点就是不支持IPv6域名解析。
安装完成后打开Finalshell,这里是空的,先要创建一个访问链接。 点击左上角的打开图标。 继续点击左上角的打开,选择SSH连接(Linux)。 名称必填,填个你能记得的名字。 主机IP填写内网分配的IP,外网填写公网IP。 SSH端口号默认是22,如果你自己改了SSH端口号就填实际的端口号。 用户名和密码就是你的NAS登录账号密码。 创建完连接后,双击即可访问。 这里需要将登录账号改成管理员,输入
之后会提示输入密码,输入时候看不到字符,不是卡了,正常输入后回车确认。 群晖和爱速特没有下图这一步。 威联通会多一步,提示是否需要用普通的shell页面,这里输入
继续提示是否确认使用普通shell界面,输入
这里就用管理员账号SSH登录了这台264C。 Transmission的标准命令行如下:
这里看到了-e有8条,上面都是正常的账号和时区相关。 比较特殊的是有两个Whitelist相关的环境变量,也就是白名单,根据作者的说明可以直接删除。 所以这里我删掉了白名单相关的变量配置,修改登录账号密码,同时将目标挂载的NAS文件夹改成了上文中查到的文件夹路径,修改后的代码如下:
修改完代码后回到Finalshell,将命令直接复制到输入框。 全部复制,不要一条条复制! 全部复制,不要一条条复制! 全部复制,不要一条条复制! 粘贴完成后回车,NAS会自动执行,等到下面出现新的待输入提示即可。 PS:由于是全新创建包含拉取映像,所以部署时间根据你的网速决定。 回到威联通的网页后台,可以看到刚创建的Transmission已经在运行中。 网页输入IP:端口,这里的端口号就是代码中的9091,实际为:
这里很多新手表示访问不了,冒号要英文的:,不是中文的:。 输入账号密码就能进入transmission的网页后台了。 2️⃣ 群晖自带管理器部署流程 演示案例为ddns-go,这是个域名管理工具。
使用设备为群晖的DS220+,系统为老版本的DSM7.0。 京东 Synology 群晖 DS220+ 双盘位NAS (J4025、2GB)2750元起实时价格7小时前已更新去购买优惠 满200元减30元 扫码领取查看更多商城 群晖自带的管理器需要在套件中心中安装,起名比较粗暴,直接叫Docker。 安装好之后进入docker,点击注册表,右上角搜索框输入ddns搜索。 点击搜索结果右上角的箭头可以跳转到Dockerhub上的项目地址,双击docker名称即可下载映像。 双击后会弹出标签选择窗口,用默认的latest。 点击映像即可查看下载的映像(群晖起名是真粗暴啊)。 趁着下载的功夫,跳转项目地址看下作者的说明,这里作者给出了四种挂载方式。 这里我使用挂载文件夹的方式,基础代码:
拆分完后先创建需要挂载的文件夹,进入file station,这里我创建的是ddns-go。 如果想用SSH方式部署Docker,查看文件夹路径的方法是右键该文件夹,点击属性。 位置这里的路径就是真实路径,比威联通简单多了。 回到Docker管理器,双击映像创建Docker,点击弹出窗口的高级设置。 点击存储空间,这里对应的是挂载文件夹,按照要求将/root挂载到刚才创建的ddns-go文件夹。 端口设置对应的是端口映射,按基础代码修改即可。 环境这边已经预制好了,不用管,默认即可。 全部配置完成后,点击应用,一路下一步就好了。 点击容器可以查看docker的运行状态。 访问NAS IP:9876即可进入web后台。 如果配置错误或者想调整配置,先暂停docker。 选中docker后点击编辑,即可重新配置Docker的各个参数。 3️⃣ 威联通自带管理器部署流程 演示案例为ubuntu桌面版,就是个虚拟机。
使用设备为还是刚才的威联通的264C。 先去App Center装好Container Station。 点击create,搜索ubuntu。 在搜索结果中找到这个desktop版本,点击名称可以跳转官方。 在项目地址我们可以看到基础代码:
老样子先创建挂载文件夹,这里命名为ubuntu。 接下来开始创建Docker,点击install后弹出版本选择,这里用latest。 点击advanced settings,进入高级配置。 作者在页面有很多可选变量说明,这里以调整显示分辨率为例。 Environment对应的是环境变量,右上角点击add创建一个空的变量,按照作者的提示填写。 Network对应的是端口映射,右上角点击add创建一个空的关系,按照作者的提示填写。 Shared Folders对应的是挂载文件夹,右上角点击add创建一个空的关系,按照作者的提示填写。 全部配置完成后点击ok。 在Container Station的右上角可以查看部署进度。 等创建完成后,浏览器访问NAS IP:6080即可访问这个ubuntu虚拟机。 4️⃣ 爱速特自带管理器部署流程 演示案例为EMBY,非常不错的影音推流软件。
使用设备为爱速特的AS5304T,系统为ADM最新的4.0版本。 爱速特用的管理器是我个人非常喜欢的第三方Docker管理器Portainer(为什么喜欢看下面),App Central搜索安装即可。 第一次进入的时候需要配置下账号密码,这里的密码不是NAS的密码,只用于登录Portainer管理器。 进入主页面后,点击左侧栏Container,这里可以看到运行中的Docker,点击add container开始创建。 在emby的项目地址找到部署命令,基础命令为:
搞清楚代码对应之后开始配置,先按要求创建挂载的文件夹,点进文件总管,这里我创建的是emby。 右键属性可以看到文件夹所在的路径和文件夹名称,后面挂载的时候需要填写完整路径,这里的emby文件夹完整路径应该是:
Portainer比较好的是能找到每一个对应的地方,值直接复制进去就可以了。 最上面对应的是docker名称、映像版本和端口映射,具体见下图,直接根据基础命令复制粘贴。 下拉网页开始配置其他的参数,首先是挂载文件夹,点击volumes,点击map additional volume添加挂载关系,然后点击右侧的bind(不然是直接挂载硬盘而不是文件夹),填写对应的文件夹关系。 点击Env,这里对应的是环境变量,点击add an environment variable创建规则,按要求填写。 这里不填其实也是可以的,一般Docker都会有针对的预设。 代码中有一条device相关的代码,主要用于调用显卡硬解,这里点击Runtime&Resources,找到device,点击add device,按照代码填写即可。 全部确认完成后上拉网页,点击Deployment the container,接下来等就好了。 部署完成后会跳转到状态页面,可以查看状态。 浏览器输入NAS IP:8096即可访问emby后台了。 ⏹ 相关设备推荐本文使用的设备推荐,大家可以按需购买。 1️⃣ 威联通 264C 简介:本文使用的案例设备,威联通新款NAS,今年刚发布的N5105处理器,四核四线程+UHD600核显足够玩Docker和硬解,原生自带两个NVME固态硬盘槽位,方便用户创建PCIE高速存储池,非常霸道,这套配置应该也是2022年主流成品NAS的标准配置了。 2️⃣ 群晖 DS220+ 简介:本文使用的案例设备,目前性价比比较高的白群晖,J4025双核虽然有点寒碜,但是玩基础Docker完全没问题,群晖的系统大家都知道,NAS行业里面算最好用的,这也是最大的卖点,想一步到位入正养老的可以考虑下。 3️⃣ 爱速特 AS5304T 简介:本文使用的案例设备,爱速特的特点是纯围绕Docker打造的ADM系统,相比上述两家对硬件利用率会更好一些,这款使用的是J4125的四核四线程CPU,搭配双2.5G网口配置基本是民用级别顶天了,如果纯玩Docker你会觉得用起来非常舒服。 4️⃣ 蒲公英 X1 组网盒子 简介:本文使用的案例设备上联,很多朋友没有ipv4的公网IP,威联通的虚拟交换机对IPv6支持很差,爱速特也是,部署的Docker没办法通过IPv6+端口号直接访问,但有了X1问题就不大了,轻轻松松组建SD-WAN,异地使用IPv4的内网IP即可访问Docker,价格也不贵,活动时候一般六十多块钱,部署省事省心,设备少的朋友推荐使用,设备多的话还是建议把SD-WAN做在网关上。 5️⃣ 希捷 酷狼 机械硬盘 简介:本文使用的案例设备,希捷酷狼全系都是 CMR,核心技术AgileArray 技术针对硬盘在 NAS 网络存储环境进行了优化,同时也是全球最先进的硬盘电源管理机制之一,配合酷狼的健康管理(IHM)可以有效实现预防、干预和恢复功实时保护硬盘的数据安全,最棒的就是附赠一次免费的数据恢复(三年内)。 ⏹ 教程完毕,你学废了吗?作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~ |
|