# docker创建第二个网心云容器
5.17更新,解决网心云容器缓存到系统盘的问题(导致系统盘0空间)
1,创建一个macvlan网络给第二个网心云使用,macvlan的原理这里不做多解释,有兴趣的朋友可以自行查询相关资料,简单说他就是bridge的另一种形式,与原有bridge不同的时候,他创建的网桥让你的docker容器与你的主网卡网段相同,而不是由虚拟网卡创建的虚拟网网络,这样你的第二个网心云容器,就可以正常的upnp成为映射公网型了。
1.群晖-控制面板-终端机和SNMP,启动SHH,端口一般默认是22,如果你的22端口已占用,自行修改一下
2.打开你PC上的SSH管理工具,推荐XSHELL和finalshell,这里以finalshell为例。打开软件之后,点左上角新建SSH连接
3.填写内容,注意端口号。
4.填写好之后,确定,回到finalshell 主页面登录。登录之后需要使用root用户登录。
命令行输入 sudo -i
返回password之后,填写你群晖的登录管理密码,输入密码是空白的,看不见,注意你的小键盘数字键是否打开了。
登录成功之后,显示为 root用户就正确了。
5.手动加载macvlan驱动,看看系统是否支持macvlan
手动加载macvlan驱动到内核
命令行输入:modprobe macvlan 正常情况下是没有返回信息的
查看是否已经加载了macvlan驱动
命令行输入:lsmod | grep macvlan 正常的话会返回 macvlan驱动的信息
这里需要注意了。如果你的设备不能加载macvlan驱动,说明Linux内核或者docker版本不支持,
需要把群晖系统升级到6.2以上。
6.命令行输入 ifconfig
查询您的网卡名称,看到显示你群晖IP的那个网卡,就是你要使用的网卡
命令行输入:route -n 查看你的网关
7.创建macvlan网卡
命令行输入,注意要一起输入,然后回车,不要一条一条输入,你可以复制我的指令,然后粘贴到记事本,修改好自己的参数之后,到finalshell里右键,粘贴
docker network create -d macvlan
--subnet=192.168.50.0/24
--ip-range=192.168.50.25/20
--gateway=192.168.50.1
-o parent=eth0 macvlan1
subnet 是你的网段,一般是你网关的IP,最后一位改成0 /24不用修改
ip-range是子网ip范围,格式是 你的网关IP ,xx.xx.xx.25/20,按我的设置也可以,你自己设置也可以
gateway 是你的网关
o parent=你的网卡名称
输入之后, 回车,返回一条长长的数字和字母组成代码,就是成功了,类似这样
注意事项:指令里面的数据一定是你本身设备的,注意修改,指令里有空格的注意不要删除了
特殊情况,有些教程说需要先打开网卡的混杂模式,我没有打开,一样可以成功了。
如果不行的话,尝试打开网卡的混杂模式再试下。
8.上面的创建完成之后,回到群晖的管理页面,打开docker套件,网络,就可以看到有个新的网络类型
里面的参数跟你在finalshell创建的是一样的。注意驱动程序:macvlan
到此,创建macvlan网络的过程已经结束了
9.创建新的docker网心云,按照官网的教程创建即可,有2个注意的地方。
其他的选项,按照教程来,或者默认不用更改即可
下面是命令行创建第二个容易方法:
--net=macnet \ 改成你自己的macvlan名称
/mnts/cntrd和/mnts/wangxinyun 改成你自己的本地缓存路径
docker run \
--name=wxedge2 \
--restart=always \
--privileged \
--net=macvlan \
--tmpfs /run \
--tmpfs /tmp \
-v /DATA/sda1-ata-TOSHIBA_MQ01ABF0/wangxinyun:/storage:rw \
-v /DATA/sda1-ata-TOSHIBA_MQ01ABF0/cntrd:/var/lib/containerd \
-d \
registry.hub.docker.com/onething1/wxedge
或者
docker run --name=wxedge2 --restart=always --privileged --net=macvlan --tmpfs /run --tmpfs /tmp -v /mnts/wangxinyun:/storage:rw -v /mnts/cntrd:/var/lib/containerd -d registry.cn-hangzhou.aliyuncs.com/onething/wxedge
10.启动新创建的网心云容器,因为我们不知道新创建的网心云容器的IP是多少。
这里说明一下,其实可以指定容器的IP,但是我测试指定IP运行的话,多次创建失败,网心云无法联网,后台也进去不,我推测是我的技术问题。。。这个问题目前还在研究。所以这里就不指定IP了
不指定容器IP,不影响网心云的运行,启动之后,可以到路由器管理页面,查找一下,最近刚刚连接的设备,这个很容易,我找到了。发现新连接的设备是192.168.68.2,所以在浏览器输入192.168.68.2:18888.正常打开网心云管理页面,然后扫描二维码绑定。一切正常
评论区