windows 中 docker 上网冲突 解决
时间: 2023-10-24 08:13:26 浏览: 176
在 Windows 上使用 Docker 时,可能会出现与主机网络冲突的问题,导致容器无法访问外部网络或者无法被主机访问。这是因为 Docker 默认会创建一个名为 docker0 的虚拟网桥,并将容器通过 NAT 方式连接到该虚拟网桥上,而该虚拟网桥会与主机网络产生冲突。
解决这个问题有两种方法:
1. 更改 Docker 的默认网桥设置
可以通过更改 Docker 的默认网桥设置来避免与主机网络的冲突。打开 Docker Desktop 设置,找到“网络”选项卡,在“网络模式”下拉菜单中选择“桥接模式”,并将“子网”和“网关”设置为与主机网络不冲突的 IP 地址。最后点击“应用和保存”按钮,重启 Docker Desktop。
2. 创建自定义网桥
另一种方法是创建一个自定义的网桥,将容器连接到该网桥上,而不是默认的 docker0 网桥。可以通过以下命令创建一个名为 my-bridge 的自定义网桥:
```
docker network create --driver bridge --subnet=172.19.0.0/16 my-bridge
```
将容器连接到自定义网桥上:
```
docker run --net my-bridge -itd --name my-container ubuntu:latest
```
请注意,需要将容器的网络模式设置为自定义网桥 my-bridge,即使用 --net my-bridge 参数。这样就可以避免与主机网络的冲突了。
阅读全文