Go游戏服务器开发的一些思考(八):Docker桥接网络及固定IP
2017-07-13 22:27
971 查看
为什么需要Docker的桥接网络
有时我们需要把Docker容器暴露到某个网段,这样就可以把一个Docker容器看成一台物理机。这时就需要用到Docker的桥接网络。比如 在做Redis集群时,通常现有的Redis管理软件会通过ssh来管理一组Redis。管理软件为了简化远程登录,通常会要求Redis所在的机器(物理机、容器或者云)就有统一的帐号、密码、端口。而一个物理机上通常会开多个Docker Redis容器。如果能把Redis容器变成这个网段的一台物理机,那个就便于Redis管理软件来管理
下面以Ubuntu系统为例,记录下Docker桥接网络的使用
配置桥接网卡
vi /etc/network/interfacesauto br2 iface br2 inet static address 192.168.1.4 netmask 255.255.255.0 gateway 192.168.1.1 bridge_ports ens33 bridge_stp off dns-nameservers 8.8.8.8 192.168.1.1
以上把br2绑定到ens33网卡上
vi /etc/docker/daemon.json
{ "bridge": "br2" }
/etc/init.d/networking restart
/etc/init.d/docker restart
桥接网段
默认桥接IP从xxx.xxx.xxx.1开始显然会造成IP冲突
配置固定IP段
可以给docker指定某IP段,具体涉及到IP、掩码知识。这里不再多述。
vi /etc/docker/daemon.json
{ "fixed-cidr": "192.168.1.100/26" }
交接网络联通外网
vi /etc/network/interfaces添加:
dns-nameservers 192.168.1.1 up route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.1.1
固定IP
安装pipeworkwget https://github.com/jpetazzo/pipework/archive/master.zip unzip master.zip cp pipework-master/pipework /usr/local/bin/ chmod +x /usr/local/bin/pipework
pipework $BRIDGE $( $DOCKER_RUN ) $IP1/24@$GATEWAY
pipework $BRIDGE $NAME1 $IP1/24@$GATEWAY
参考文档
http://www.jb51.net/article/94550.htmhttp://ylw6006.blog.51cto.com/470441/1607014/
相关文章推荐
- Go游戏服务器开发的一些思考(九):Docker桥接网络及固定IP (二)
- Go游戏服务器开发的一些思考(九):Docker桥接网络及固定IP (二)
- Go游戏服务器开发的一些思考(六):Docker Swarm Mode
- Go游戏服务器开发的一些思考(十八):Docker内网环境搭建(备忘)
- Go游戏服务器开发的一些思考(二十五):Redis的Docker Swarm部署
- Go游戏服务器开发的一些思考(二十四):命令行库封装技巧
- Go游戏服务器开发的一些思考(三十七):无缝世界场景构建与同步(四)
- Go游戏服务器开发的一些思考(十一):IO游戏同步
- Go游戏服务器开发的一些思考(二十七):Go Redis ORM库(二)
- Go游戏服务器开发的一些思考(三十四):无缝世界场景构建与同步(一)
- Go游戏服务器开发的一些思考(十二):行为树behavior3go介绍
- Go游戏服务器开发的一些思考(三十一):排行榜服务器设计思路(二)
- Go游戏服务器开发的一些思考(五):goroutine看似美好的陷阱
- Go游戏服务器开发的一些思考(二):综合考察(上)
- Go游戏服务器开发的一些思考(二十二):Godep包管理介绍
- Go游戏服务器开发的一些思考(三十五):无缝世界场景构建与同步(二)
- Go游戏服务器开发的一些思考(十七):IO游戏同步(三)
- Go游戏服务器开发的一些思考(十六):IO游戏服务器架构
- Go游戏服务器开发的一些思考(二十一):Go语言的两处脑残设定
- Go游戏服务器开发的一些思考(十四):IO游戏同步(二)