一、Docker安装后,默认会创建三种网络类型,bridge、host和none,可通过如下命令查看
docker network ls
bridge:网络桥接
默认情况下启动、创建容器都是用该模式,所以每次Docker容器重启时会按照顺序获取对应ip地址,这就导致容器每次重启,ip都发生变化
none:无指定网络
启动容器时,可以通过–network=none,Docker容器不会分配局域网ip
host:主机网络
Docker容器的网络会附属在主机上,两者是互通的。
二、创建自定义网络和固定ip
1、创建自定义网络类型,并且指定网段
docker network create --driver=bridge --gateway=192.168.0.1 --subnet=192.168.0.0/16 mynetwork
--driver:驱动程序类型
--subnet:代表网段的CIDR格式的子网
--gateway:主子网的IPV4和IPV6的网关
mynetwork:是自定义网络名称
2、通过docker network ls可以查看到网络类型中多了一个mynetwork
3、使用docker network inspect mynetwork 查看网络信息
4、使用新的网络类型创建并启动容器
docker run -d --name=consul -p 8500:8500 --net=mynetwork --ip=192.168.0.2 -e CONSUL_BIND_INTERFACE=eth0 --restart=always consul agent --server=true --bootstrap-expect=1 --client=0.0.0.0 -ui