首页主机资讯docker网络配置centos教程

docker网络配置centos教程

时间2025-10-17 19:55:04发布访客分类主机资讯浏览550
导读:Docker网络配置CentOS教程 一、前置准备 确保CentOS系统已安装Docker(可通过docker --version验证)。若未安装,可参考官方文档安装最新版本。 二、查看当前网络配置 使用以下命令查看Docker已有的网络列...

Docker网络配置CentOS教程

一、前置准备

确保CentOS系统已安装Docker(可通过docker --version验证)。若未安装,可参考官方文档安装最新版本。

二、查看当前网络配置

使用以下命令查看Docker已有的网络列表,了解默认网络(bridgehostnone)及自定义网络:

docker network ls

三、Docker网络模式说明

Docker支持五种网络模式,需根据场景选择:

  1. Bridge模式(默认):容器连接虚拟网桥docker0,通过NAT与宿主机通信,适合单主机环境。容器拥有独立IP,但外部需通过端口映射访问。
  2. Host模式:容器直接使用宿主机的网络栈(IP、端口),无独立网络命名空间,性能最佳但不支持端口复用。
  3. Container模式:新容器与指定容器共享网络命名空间(IP、端口),适合需要紧密耦合的容器(如日志收集器与主应用)。
  4. None模式:容器无网络配置,仅保留lo接口,适合完全隔离的场景(如安全审计容器)。
  5. Overlay模式:跨多主机容器通信的网络模式(需Docker Swarm集群支持),适合分布式应用。

四、创建自定义网络(以Bridge为例)

默认的bridge网络无法灵活配置IP范围,建议创建自定义网络:

docker network create \
  --driver bridge \          # 指定驱动为bridge
  --subnet 192.168.100.0/24 \ # 设置子网范围(CIDR格式)
  --gateway 192.168.100.1 \   # 设置网关IP
  my_custom_bridge           # 网络名称

五、连接容器到网络

1. 启动新容器并直接连接自定义网络

docker run -d \
  --name my_nginx \
  --network my_custom_bridge \ # 指定自定义网络
  -p 8080:80 \                 # 端口映射(宿主机8080→容器80)
  nginx

2. 将现有容器连接到自定义网络

docker network connect my_custom_bridge my_existing_container

六、配置静态IP地址

创建网络时通过--subnet--gateway指定IP范围,启动容器时通过--ip分配静态IP:

# 创建时指定IP范围
docker network create \
  --driver bridge \
  --subnet 192.168.200.0/24 \
  --gateway 192.168.200.1 \
  my_static_bridge

# 启动容器并分配静态IP
docker run -d \
  --name my_mysql \
  --network my_static_bridge \
  --ip 192.168.200.10 \        # 指定静态IP
  -e MYSQL_ROOT_PASSWORD=123456 \
  mysql:8.0

七、查看网络详细信息

使用以下命令查看网络的详细配置(如容器列表、IP分配、网关等):

docker network inspect my_custom_bridge

八、删除网络

若不再需要自定义网络,可使用以下命令删除(需确保网络中无容器连接):

docker network rm my_custom_bridge

九、配置Docker守护进程网络(高级)

若需全局修改Docker网络参数(如默认网桥IP、MTU),可编辑配置文件/etc/docker/daemon.json

{

  "bip": "192.168.100.1/24",       # 默认bridge网络的IP
  "fixed-cidr": "192.168.100.0/24", # bridge网络的IP范围
  "mtu": 1450                      # MTU值(根据网络环境调整)
}
    

修改后重启Docker服务使配置生效:

systemctl restart docker

十、使用Docker Compose配置网络(复杂场景)

对于多容器应用,可使用docker-compose.yml文件定义网络:

version: '3'
services:
  web:
    image: nginx
    networks:
      - my_frontend
  db:
    image: mysql:8.0
    networks:
      - my_backend
    environment:
      MYSQL_ROOT_PASSWORD: 123456

networks:
  my_frontend:
    driver: bridge
    ipam:
      config:
        - subnet: 192.168.300.0/24
          gateway: 192.168.300.1
  my_backend:
    driver: bridge
    ipam:
      config:
        - subnet: 192.168.400.0/24
          gateway: 192.168.400.1

启动服务:

docker-compose up -d

以上步骤覆盖了CentOS下Docker网络的基础配置与进阶场景,可根据实际需求选择合适的网络模式与配置方式。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: docker网络配置centos教程
本文地址: https://pptw.com/jishu/729314.html
centos虚拟机如何提升运行效率 centos虚拟机如何分配CPU资源

游客 回复需填写必要信息