docker有四种网络模式:Bridge、Host、Container、None。docker默认是Bridge。实际中一般都是使用Bridge和Host

Bridge模式,当docker进程启动时,会在主机上创建一个名为docker0的虚拟网桥。

Docker网络模式详解

查看容器信息

Docker网络模式详解

Host模式:如果启动容器的时候使用host模式,那么这个容器将不会获得一个独立的Network Namespace,而是和宿主机共用一个Network Namespace。容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。这里我拿tomcat测试下

Docker网络模式详解

由于是新的linux,没有开放8080端口,这里开启下

(firewall-cmd --add-port=8080/tcp --permanent、firewall-cmd --reload)

Docker网络模式详解

(docker run -d --net=host --name to1 94e31e5297d1)

Docker网络模式详解

Docker网络模式详解 

container模式:这个模式指定新创建的容器和已经存在的一个容器共享一个Network Namespace,而不是和宿主机共享。新创建的容器不会创建自己网卡,配置自己的IP,而是和一个指定的容器共享IP,端口范围。

首先使用默认模式创建一个容器

(docker run -d --name nginx -p 80:80 -p 8080:8080 7743d9092020 )

Docker网络模式详解

此时80是好使的

Docker网络模式详解

8080不好使

Docker网络模式详解

 

使用container创建容器

(docker run -d --name to1 --net=container:nginx 94e31e5297d1)

Docker网络模式详解

Docker网络模式详解

有喜欢的朋友可以关注下头条号《老徐聊技术

 

相关文章:

  • 2022-02-24
  • 2021-04-25
  • 2021-09-21
  • 2022-12-23
  • 2021-08-09
  • 2022-01-15
  • 2022-02-07
  • 2021-07-01
猜你喜欢
  • 2021-06-27
  • 2021-09-13
  • 2021-09-13
  • 2019-01-07
相关资源
相似解决方案