|
当安装Docker时,它会自动创建一个名为`docker0`的虚拟网桥,用于连接Docker主机和Docker容器。`docker0`会被分配一个IP地址,默认为`172.17.0.1/16`,这个网段`172.17.0.0/16`就是Docker容器可以使用的IP地址池。 当您启动一个新的容器时,Docker会从这个IP地址池中为容器分配一个新的IP地址。您提到的`172.18.0.1`和`172.19.0.1`看起来并不在这个默认网段内,很可能是由于您修改了Docker的网络配置或使用了自定义的网络。 如果您想让新创建的容器使用`172.17.0.x`网段,有以下几个选择: 1. **使用默认网桥网络** 在创建容器时不指定任何网络选项,Docker会自动将容器连接到`docker0`网桥,并从`172.17.0.0/16`网段中分配IP地址。 ```bash docker run --name mycontainer -d nginx ``` 2. **创建自定义桥接网络** 您可以创建一个自定义的桥接网络,并指定所需的网段,例如`172.17.0.0/24`。新创建的容器将使用该网络中的IP地址。 ```bash docker network create --driver bridge --subnet 172.17.0.0/24 my-net docker run --name mycontainer --network my-net -d nginx ``` 3. **修改Docker daemon配置** 您可以通过修改Docker daemon的配置文件,更改默认桥接网络的IP地址池。这需要重启Docker服务才能生效。 在Linux上,编辑`/etc/docker/daemon.json`文件,添加如下内容: ```json { "bip": "172.17.0.1/16" } ``` 在Windows上,请参考官方文档进行配置。 总的来说,`172.17.0.1`是Docker默认创建的虚拟网桥`docker0`的IP地址,用于容器互联。您可以根据需求使用默认网络或创建自定义网络来控制容器的IP地址分配。 |
|