跳转至

Docker 网络

Docker Desktop

Docker 虚拟机

docker run -it --privileged --pid=host debian nsenter -t 1 -m -u -n -i sh

原生单机网络

  • None:不为容器配置任何网络功能,--net=none
  • Host:与主机共享Network Namespace,--net=host
  • Container:与另一个运行中的容器共享网络名称空间,--net=container:ID
  • Bridge:Docker设计的,默认的NAT网络模型,--net=bridge
$ docker network ls

NETWORK ID     NAME      DRIVER    SCOPE
1c48b3ec340c   bridge    bridge    local
ba374af14611   host      host      local
0dc1c708d293   none      null      local

None

docker run -it --rm --network=none alpine

Host

docker run -it --rm --network=host busybox

原生多机网络

  • overlay:基于vxlan的隧道网络
  • macvlan:基于网卡虚拟化的大局域网

第三方多机网络

  • flannel
  • weave
  • calico

原理

https://github.com/moby/moby/tree/master/libnetwork

资源


最后更新: September 10, 2023