徐锦洪 发表于 2025-1-14 08:08:30

怎样修改 Docker 和 Docker Compose 默认占用的网段

在使用 Docker 和 Docker Compose 举行容器化部署时,Docker 默认会为容器分配一个私有网段(通常是 172.17.0.0/16)。然而,在某些情况下,这个默认网段可能会与现有的网络环境冲突,导致网络连接标题。为了制止这种情况,我们可以手动修改 Docker 和 Docker Compose 的默认网段。
本文将先容怎样修改 Docker 和 Docker Compose 的默认网段,并提供具体的步调和示例。
1. 修改 Docker 默认网段

Docker 默认使用 172.17.0.0/16 网段为容器分配 IP 地址。要修改这个默认网段,我们需要编辑 Docker 的配置文件。
1.1 修改 Docker 配置文件

在大多数 Linux 发行版中,Docker 的配置文件位于 /etc/docker/daemon.json。如果该文件不存在,可以手动创建它。

[*]打开或创建 Docker 配置文件:
sudo nano /etc/docker/daemon.json
[*]在配置文件中添加或修改 bip 配置项,指定新的网段。例如,将默认网段修改为 192.168.100.1/24:
{
"bip": "192.168.100.1/24"
}

[*]bip 是 "bridge IP" 的缩写,用于指定 Docker 桥接网络的 IP 地址和子网掩码。

[*]生存并关闭文件。
1.2 重启 Docker 服务

修改配置文件后,需要重启 Docker 服务以使更改生效:
sudo systemctl restart docker1.3 验证更改

重启 Docker 后,可以使用以下命令查看 Docker 网络的配置,确认默认网段是否已更改:
docker network inspect bridge在输出中,您应该看到 Subnet 字段已经更新为您指定的新网段。
2. 修改 Docker Compose 默认网段

Docker Compose 默认使用 Docker 的桥接网络(bridge),因此它会继承 Docker 的默认网段。如果您希望为 Docker Compose 项目单独指定一个差别的网段,可以在 docker-compose.yml 文件中自定义网络配置。
2.1 修改 docker-compose.yml 文件

假设您有一个 docker-compose.yml 文件,您可以在其中定义自定义网络并指定网段。

[*]打开 docker-compose.yml 文件:
nano docker-compose.yml
[*]在文件中添加或修改 networks 部分,定义一个自定义网络并指定网段。例如:
version: '3.8'

services:
web:
    image: nginx
    networks:
      - my_network

networks:
my_network:
    driver: bridge
    ipam:
      config:
      - subnet: 10.0.0.0/24

[*]my_network 是自定义网络的名称。
[*]subnet 指定了自定义网络的网段。

[*]生存并关闭文件。
2.2 启动 Docker Compose 项目

使用以下命令启动 Docker Compose 项目:
docker-compose up -d2.3 验证更改

启动项目后,可以使用以下命令查看 Docker Compose 网络的配置,确认自定义网段是否已生效:
docker network inspect <project_name>_my_network在输出中,您应该看到 Subnet 字段已经更新为您指定的新网段。
3. 总结

通过修改 Docker 和 Docker Compose 的默认网段,您可以制止与现有网络环境的冲突,确保容器网络的正常运行。本文先容了怎样通过修改 Docker 配置文件和自定义 Docker Compose 网络来实现这一目标。希望这些步调能帮助您更好地管理 Docker 容器的网络配置。
如果有任何标题或发起,欢迎大家在批评区留言讨论!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 怎样修改 Docker 和 Docker Compose 默认占用的网段