debian

Debian系统Docker网络怎么配置

小樊
40
2025-10-14 15:20:40
栏目: 智能运维

Debian系统Docker网络配置指南

1. 安装Docker

在Debian系统上配置Docker网络前,需先安装Docker。执行以下命令更新软件包索引并安装docker.io(Debian默认仓库中的Docker版本):

sudo apt update
sudo apt install docker.io

2. 启动并启用Docker服务

安装完成后,启动Docker服务并设置为开机自启,确保系统重启后Docker仍能正常运行:

sudo systemctl start docker
sudo systemctl enable docker

3. 查看现有Docker网络

Docker安装后会自动创建默认网络(如bridgehostnone)。使用以下命令查看所有网络:

docker network ls

输出示例:

NETWORK ID     NAME      DRIVER    SCOPE
a7c7ceea1212   bridge    bridge    local
20be84b131a9   host      host      local
2d3a1436301f   none      null      local

4. 创建自定义网络

默认的bridge网络功能有限,建议创建自定义网络以实现更好的容器管理和通信。以下命令创建一个名为my_bridge_network的桥接网络,并指定子网(192.168.1.0/24)和网关(192.168.1.1):

docker network create --driver bridge --subnet=192.168.1.0/24 --gateway=192.168.1.1 my_bridge_network

5. 运行容器并连接到自定义网络

创建容器时,通过--network参数将其连接到自定义网络。例如,运行一个Nginx容器并连接到my_bridge_network

docker run -d --name my_nginx --network my_bridge_network nginx

若需为容器指定静态IP,可在启动命令中添加--ip参数:

docker run -d --name my_nginx --network my_bridge_network --ip 192.168.1.10 nginx

6. 配置网络模式

Docker支持多种网络模式,可根据需求选择:

7. 配置网络参数

7.1 配置Docker守护进程网络

若需修改Docker守护进程的网络配置(如监听端口、DNS服务器),可编辑/etc/docker/daemon.json文件。例如,添加DNS服务器:

{
  "dns": ["8.8.8.8", "8.8.4.4"]
}

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

sudo systemctl restart docker

7.2 配置端口映射

若需将容器端口映射到主机端口(如将Nginx的80端口映射到主机的8080端口),可使用-p参数:

docker run -d --name my_nginx --network my_bridge_network -p 8080:80 nginx

8. 查看容器网络配置

使用docker inspect命令查看容器的详细网络信息(如IP地址、网关、DNS):

docker inspect my_nginx

在输出中查找NetworkSettings部分,可获取容器的具体网络配置。

9. 删除网络

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

docker network rm my_bridge_network

10. 使用Docker Compose管理复杂网络

对于多容器应用(如Web+数据库),可使用Docker Compose简化网络配置。创建docker-compose.yml文件:

version: '3'
services:
  web:
    image: nginx
    networks:
      - my_custom_network
  db:
    image: mysql
    networks:
      - my_custom_network
networks:
  my_custom_network:
    driver: bridge
    subnet: 172.20.0.0/16
    gateway: 172.20.0.1

启动服务:

docker-compose up -d

通过以上步骤,可在Debian系统上完成Docker网络的配置与管理,满足不同场景下的网络需求。

0
看了该问题的人还看了