目录

1. host 模式概述

2. host模式代码语法

3. docker inspect 查看 bridge/host模式 容器元数据

4. ip addr 进入 tomcat83 (host模式) 容器内部查看容器ip

5. 如何访问启动 tomcat83 (host模式)


1. host 模式概述

直接使用宿主机的IP地址与外界进行通信,不再需要额外进行NAT转换。容器将不会获得一个独立的Network Namespace,而是和宿主机共用一个Network Namespace,同时容器将不会虚拟出自己的网卡,而是使用宿主机的IP和端口,如下图host模式所示:


2. host模式代码语法

一般情况下,新建一个容器,默认使用的网络模式为 bridge,如果想要指定为 host 模式,需要使用 --netowrk host 指定,如下所示。但需要注意的是,不需要写 -p 这个参数,因为 host 模式不会进行端口映射!!

docker run-d --network host--name tomcat83 billygoo/tomcat8-jdk8

使用 docker ps 查看容器 tomcat83 情况,其中 tomcat83 为 host模式,剩下的为bridge模式:


3. docker inspect 查看bridge/host模式容器元数据

由于 tomcat83 为 host模式,tomcat81 和 tomcat 82 为bridge模式。所以 tomcat81的虚拟ip和网关为空,tomcat81 和 tomcat 82 不为空,因为在容器起到后Docker网桥会分配给容器id。

 

 


4. ip addr 进入 tomcat83 容器(host模式)内部查看容器ip

通过进入tomcat83查看容器ip,可看到容器内部的ip显示和宿主机的一样。

5. 如何访问启动 tomcat83(host模式)

同上述所说,此时容器的ip是使用宿主机的,所以容器内共享宿主机的网络ip。因此直接使用:http://宿主机ip:8080/ 即可。

注:本文部分图文内容来自于 docker network之host 的学习笔记,仅供参考。如看其他Docker内容,可看我博客Docker系列aaron_neil_Dcoker系列,持续更新中。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐