docker network类型

查看当前支持

docker network 支持的 --driver(网络驱动)

1
2
3
4
5
6
7
8
9
docker network ls
docker network create --help

docker info | grep -A4 'Plugins'
...
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay ### 支持类型
Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog

Docker默认支持的网络驱动类型

驱动名称 说明
bridge 默认网络驱动,容器间通信通过虚拟网桥。适用于单主机部署
host 容器共享主机网络命名空间,性能好,但隔离性差(仅适用于 Linux)
none 容器无网络连接,适用于完全自定义网络场景
overlay 跨主机容器通信,用于 Swarm 集群模式(需要 docker swarm init
macvlan 为容器分配物理网络中的 MAC/IP 地址,容器表现得像局域网内主机
ipvlan 类似 macvlan,但共享 MAC 地址,用于更复杂网络需求(相对较少用)
null none 一样,创建隔离网络(内部使用)

创建不同驱动网络

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 创建 bridge 网络
docker network create --driver bridge my-bridge

# 创建 host 网络(Linux only)
docker network create --driver host my-host

# 创建 overlay 网络(需 Swarm 跨主机通信)
docker network create --driver overlay my-overlay

# 创建 macvlan 网络
docker network create -d macvlan \
--subnet=192.168.1.0/24 \
--gateway=192.168.1.1 \
-o parent=eth0 \
my-macvlan

第三方或插件驱动(可通过插件机制扩展):

  • weave
  • calico
  • cilium
  • flannel
  • ovn
  • contiv

使用 docker plugin ls 查看插件。


查看支持的驱动方式:

1
docker info | grep -A10 'Plugins'

示例输出:

Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay