群晖 | 将Docker的网络模式从bridge切换到host
目的是让docker容器可以使用ipv6网络
需求
之前用docker版qb,一直没啥问题,但是前几天给屋里的ipv6捣鼓出来了,所以就想着能不能让qb也用上ipv6,增加连通性。
弯路
网上找了一些教程,都是说创建一个ipv4和ipv6双通的macvlan
网络,跟着整了出来。
但是命令里需要指定ipv6子网,我的设备的ipv6地址并不是静态的,所以就放弃了。
解决方法
又找了找方法,有人提到将docker的网络模式设置为host
,可以让docker容器使用宿主机的网络信息。
遇到新问题
在群晖的docker容器设置里可以更改很多属性,但并不包括网络模式,网络模式在创建容器的时候就已经定死了,我又不想重新转种。
解决方案
摸索了一下,在群晖的容器界面可以将容器导出,导出的文件是json,里边包含了所有的容器参数,当然也包含了网络模式和文件夹映射。
修改json文件,将网络模式从bridge
切换到host
,再在群晖中导入,启动容器,就可以连上ipv6的用户了。
当然这么做的前提是旧的docker容器做过文件夹映射,不然文件夹都在docker内部,换个容器所有的做种都没了。