docker自定义网络模式
目录
docker自定义网络模式,实现容器固定ip地址
我们在使用Docker容器时候,每次启动容器,容器分配到的虚拟IP经常变动,比如我们现在使用Mycat + Mysql,我们是需要配置Mysql服务IP地址的,这个IP是Docker分配的虚拟IP,假如老是变,那我们还得老是修改配置,那就很麻烦了;所以我们需要固定手工分配容器IP;
Docker默认使用的是bridge 桥接网络模式,
我们可以查看下 docker network ls
我们创建自定义网络模式;docker network create --subnet=172.20.0.0/16 extnetwork
创建容器并指定IP;通过--net extnetwork --ip 172.20.0.2
指定
案例:
|
|
我们启动两个Mysql容器,并且固定分配IP 172.20.0.2和172.20.0.3 (注意:这里必须用172.20.0.2开始分配,因为172.20.0.1是网关;)
查看ip
docker inspect 容器id
完美分配了;我们后面mycat也分配一个 172.20.0.4 这样就容易运维了;
扩展:
ERROR: Pool overlaps with other one on this address space
错误原因:networks参数下手动指定了subnet地址,此地址发生了冲突。
解决:
|
|
之后重新运行docker-compose up -d
命令即可。