直接回答:Docker 有 host、bridge、none、container 四种网络模式:要性能和简单就用 host,需要隔离和端口映射就用默认的 bridge,完全不要网络用 none,多个容器共享同一张网卡用 container。
Docker有四种网络模式
1.host模式
容器和宿主机共享network,这时候localhost就可以访问宿主机端口了。
1 | docker run -d --network host --name nginx |
2.container模式
容器A和容器B共享network,就是说容器之间可以通过localhost直接访问。
1 | docker run -d --network container --name nginx |
3.none模式
容器与宿主机隔绝,不能联网,安全性最高,一般很少用到。
1 | docker run -d --network none --name nginx |
4.bridge模式(默认模式)
每个容器有自己的network,通过localhost访问不到宿主机
1 | docker run -d --name nginx |
这篇笔记整理自我自己的实践记录,如果做法有出入,或者你踩过别的坑,欢迎到留言板一起聊聊。