在使用 CentOS 系统部署容器化应用时,容器网络配置 是一个非常关键的环节。无论你是刚接触 Docker 的新手,还是有一定经验的开发者,掌握 CentOS 容器网络配置 都能帮助你更高效地构建和管理容器服务。
默认情况下,Docker 会为每个容器分配一个私有 IP 地址,并通过桥接网络(bridge network)实现容器与宿主机之间的通信。但在实际生产环境中,我们可能需要:
这些需求都离不开对 Docker 网络设置 的深入理解与合理配置。
首先确保你的 CentOS 系统已安装 Docker。若未安装,请执行以下命令:
# 更新系统sudo yum update -y# 安装必要依赖sudo yum install -y yum-utils device-mapper-persistent-data lvm2# 添加 Docker 官方仓库sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo# 安装 Docker CEsudo yum install -y docker-ce docker-ce-cli containerd.io# 启动并设置开机自启sudo systemctl start dockersudo systemctl enable docker# 验证安装docker --version Docker 在 CentOS 上默认提供三种网络驱动:
大多数场景下,我们使用 bridge 模式,并通过自定义网络增强灵活性。
自定义网络可以让你更好地控制容器间的通信。下面创建一个名为 my-net 的桥接网络:
# 创建自定义网络sudo docker network create --driver bridge --subnet=172.20.0.0/16 my-net# 查看网络列表sudo docker network ls# 查看 my-net 详细信息sudo docker network inspect my-net 现在你可以将容器加入这个网络:
# 启动两个容器并加入 my-netsudo docker run -d --name web-server --network my-net nginxsudo docker run -it --name client --network my-net alpine sh# 在 client 容器中 ping web-server(容器名可直接解析)ping web-server 如果你希望从宿主机或外网访问容器中的 Web 服务(如 Nginx),需使用 -p 参数进行端口映射:
# 将容器 80 端口映射到宿主机 8080 端口sudo docker run -d --name my-nginx -p 8080:80 nginx# 访问 http://你的服务器IP:8080 即可看到 Nginx 欢迎页 1. 容器无法联网? 检查防火墙是否放行相关端口(CentOS 默认启用 firewalld):
sudo firewall-cmd --permanent --add-port=8080/tcpsudo firewall-cmd --reload 2. 容器间无法通过名称通信? 确保它们在同一个自定义网络中(默认 bridge 网络不支持 DNS 解析)。
3. 使用 docker logs 容器名 查看日志,定位网络错误。
通过本教程,你已经掌握了在 CentOS 系统中进行 容器网络配置 的核心方法。无论是使用默认桥接、自定义网络,还是端口映射,都能满足不同场景下的需求。记住:CentOS Docker网络 的关键是理解网络模型并合理规划子网与服务暴露方式。
希望这篇 容器网络教程 能帮助你轻松上手!如有疑问,欢迎在评论区交流。
本文由主机测评网于2025-12-06发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025123852.html