比Download Station好用100倍!NAS神器——Docker设置教程

比Download Station好用100倍!NAS神器——Docker设置教程,第1张

很多NAS玩家都很重视下载这个功能,一些小白刚上手NAS的时候,觉得自带的 Download Station 真的太好用了。但是时间一长后就发现,怎么这个链接下载不了,那个链接没有速度,这对于NAS的体验可谓是大打折扣。

目前来看,无论是群晖、威联通、华芸铁以及威马等一些出名的NAS厂商在自家的下载应用这一块都做的不如人意。但是NAS应用商店里面除了官方出的一些APP外,还有其他创作者上传的BT软件啊,比如Transmission、aira2等等,而如今这些很多也是逐渐下架,所以玩家们是时候尝试一下Docker了。

Docker是一个开源的应用容器引擎,,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。

我们以威联通NAS为例,来看一下如何 *** 作。

首先你要有一台装好系统的NAS,作者使用的威联通TS-453Bmini,就以此为例为大家演示。首先进入APP Center进行寻找Container Station。

威联通Container Station是一个软件容器工作站,它整合了LXC和Docker两项轻量级虚拟技术。它提供目前最热门、且已设置完成的应用程序,只要在其中点击即可部署。

我们下载完成之后直接打开。

可以看到主页面十分简洁,接着我们点击创建。

可以看到一个搜索框,可以直接在里面输入我们要搜索的Docker,我们首先搜索Transmission。

通过搜索结果可以看到,在Docker Hub里面是有这个Docker的,接下来我们点击安装,然后创建。

会让你选择使用哪个版本,我们选择最新的版本,点击下一步。

接下来开始创建Container,我们选择高级设置。

现有设置不变,新增三个选项,第一个名称为PGID,值为1000;第二个名称为PUID,值为1000;第三个名称为TZ,值为Asia/Chita。

接下来点击网络,进行网络设置。

主机、Container、通讯协议设置参数如上,设置完成点击共享文件夹。

进入页面后我们看到有一栏是挂载本机共享文件夹,我们要新增3个选项。

其中选择文件夹可以选择自己已经建好的,直接扔到里面,而挂载路径需要填写一下。

/config :配置文件目录的存放区域。

/downloads :下载资料的存放区域。

/watch :存放新种子文件目录的存放区域。

完成后点击创建。

最后确认,返回主页面查看状态。

好了,大功告成。

接下来点击链接进入Transmission。

咱们随便找几个链接扔到里面,看看速度。

家里是百兆的带宽,夜晚高峰时间段下载速度为5.26MB/s,一般情况下可以跑满带宽,较为满意。

1. 下载 Kitematic首先,我们需要从 github 仓库 中下载 Windows *** 作系统可用的最新的 Kitematic 发行版。我们用下载器或者 web 浏览器下载了它的可执行 EXE 文件。下载完成后,我们需要双击可执行应用文件。

双击应用文件之后,会问我们一个安全问题,我们只需要点击 OK 按钮,如下图所示。

2. 安装 Kitematic

下载好可执行安装程序之后,我们现在就可以在我们的 Windows *** 作系统上安装 Kitematic了。安装程序现在会开始下载并安装运行 Kitematic 需要的依赖软件,包括 Virtual Box 和 Docker。如果已经在系统上安装了 Virtual Box,它会把它升级到最新版本。安装程序会在几分钟内完成,但取决于你网络和系统的速度。如果你还没有安装 Virtual Box,它会问你是否安装 Virtual Box 网络驱动。建议安装它,因为它用于 Virtual Box 的网络功能。

所需的依赖 Docker 和 Virtual Box 安装完成并运行后,会让我们登录到 Docker Hub。如果我们还没有账户或者还不想登录,可以点击 SKIP FOR NOW 继续后面的步骤。

如果你还没有账户,你可以在应用程序上点击注册(Sign Up)链接并在 Docker Hub 上创建账户。

完成之后,就会出现 Kitematic 应用程序的第一个界面。正如下面看到的这样。我们可以搜索可用的 docker 镜像

3. 部署 Nginx Hello World 容器

现在,成功安装完 Kitematic 之后,我们打算部署容器。要运行一个容器,我们只需要在搜索区域中搜索镜像。然后点击 Create 按钮部署容器。在这篇教程中,我们会部署一个小的包含了 Hello World 主页的 Nginx Web 服务器。为此,我们在搜索区域中搜索 Hello World Nginx。看到了容器信息之后,我们点击 Create 来部署容器。

镜像下载完成之后,它会自动部署。我们可以查看 Kitematic 部署容器的命令日志。我们也可以在 Kitematic 界面上预览 web 页面。现在,我们通过点击预览在 web 浏览器中查看我们的 Hello World 页面。

如果我们想切换到命令行接口并用它管理 docker,这里有个称为 Docker CLI 的按钮,它会打开一个 PowerShell,在里面我们可以执行 docker 命令。

现在,如果我们想配置我们的容器并执行类似更改容器名称、设置环境变量、指定端口、配置容器存储以及其它高级功能的任务,我们可以在容器设置页面做到这些。

总结

我们终于成功在 Windows *** 作系统上安装了 Kitematic 并部署了一个 Hello World Ngnix 服务器。推荐下载安装 Kitematic 最新的发行版,因为会增加很多新的高级功能。由于 Docker 运行在 64 位平台,当前 Kitematic 也是为 64 位 *** 作系统构建。它只能在 Windows 7 以及更高版本上运行。

目前让docker 运行的系统拥有gui的大概有两个,一个是X11server 、一个是novnc,搭建成本来说vnc配置还是比低的。但是novnc是vnc的web客户端,虽然方便,但是个人感觉web性能可能会低一些,所以本教程去掉web这部分,直接用vnc客户端链接。开始吧。

1.这里我选用官方的centos7镜像(注意镜像是不含desktop的)

2.启动镜像创建并创建容器(关于各启动参数的意思 --name 是给容器起名字,方便调用 -p 是映射内外端口,这里映射了5901端口,也就是等下要运行的vncserver所需要的端口)

1.进入容器(由于我们给容器起了名字,所以我们可以直接定位进入容器,不需要再查看容器id)

2.安装desktop

2.1先看一下有什么desktop可以装

这里我选择安装GNOME Desktop

2.2配置默认启动图形界面

3.安装 vnc server

1.复制配置模板文件为vncserver@:1.service

2.修改配置文件

nano这个软件可能需要安装一下

开始编辑配置:

会看到如下配置内容:

[Unit]

Description=Remote desktop service (VNC)

After=syslog.target network.target

[Service]

Type=forking

ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i >/dev/null 2>&1 || :'

ExecStart=/usr/sbin/runuser -l <USER>-c "/usr/bin/vncserver %i"

PIDFile=/home/<USER>/.vnc/%H%i.pid

ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i >/dev/null 2>&1 || :'

[Install]

WantedBy=multi-user.target

我们只要把<USER >替换成我们的用户名就可以了,由于docker是以root登入的,我们把<USER >改成root

改好如下:

[Unit]

Description=Remote desktop service (VNC)

After=syslog.target network.target

[Service]

Type=forking

ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i >/dev/null 2>&1 || :'

ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"

PIDFile=/home/root/.vnc/%H%i.pid

ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i >/dev/null 2>&1 || :'

[Install]

WantedBy=multi-user.target

3.设置vnc链接密码

如果有view-only选项的话选n

4.重启容器并且更新systemctl

如果 systemctl daemon-reload 和 systemctl start vncserver@:1.service 发生错误,可以尝试重启容器,并把

/lib/systemd/system/vncserver@:1.service 配置里的Type=forking改为Type=simple

5.启动vncserver@:1.service服务,并设置开机自启

6.查看进程是否启动了

如果看到

tcp0 0 0.0.0.0:59010.0.0.0:* LISTEN 233/Xvnc

tcp0 0 172.17.0.2:5901 172.17.0.1:55824ESTABLISHED 233/Xvnc

tcp6 0 0 :::5901 :::*LISTEN 233/Xvnc

就说明vnc服务起来了

7.配置防火墙

CentOS7默认的防火墙不是iptables,而是firewalle,

所以 根据个人喜好选择以下两种方案

方案一(firewalle)

1.添加firewalle 端口规则

方案二(iptables)

1.先检查是否安装了iptables

2.禁用/停止自带的firewalld服务

3.启动iptables服务并设置自启动

4.添加vnc服务端口iptables规则

内容大概如下:

please do not ask us to add additional ports/services to this default configuration

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -i lo -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 5901 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

COMMIT

5.重启iptables服务,使新添加的规则生效

6.完结:

现在你可以使用vncwiewer等工具来链接你的docker了

后续:建议保存你的容器为自定义镜像以供使用


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/11222338.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-14
下一篇2023-05-14

发表评论

登录后才能评论

评论列表(0条)

    保存