iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >Docker的四种网络模式
  • 472
分享到

Docker的四种网络模式

2024-04-02 19:04:59 472人浏览 安东尼
摘要

Docker 的四种网络模式 Docker 有 bridge、none、host、container 四种网络模式,提供网络隔离、端口映射、容器间互通网络等各种支持,下面开门见山地直

Docker 的四种网络模式

Docker 有 bridge、none、host、container 四种网络模式,提供网络隔离、端口映射、容器间互通网络等各种支持,下面开门见山地直接介绍这四种网络模式。

这四种网络模式可以通过启动容器的时候指定,其命令或参数个数如下:

网络模式参数说明
host模式-–net=host容器和宿主机共享 Network namespace。
container模式–-net={id}容器和另外一个容器共享 Network namespace。 kubernetes 中的pod就是多个容器共享一个 Network namespace。
none模式–-net=none容器有独立的Network namespace,但并没有对其进行任何网络设置,如分配 veth pair 和网桥连接,配置IP等。
bridge模式-–net=bridge默认为该模式,通过 -p 指定端口映射。

这四种模式可以理解成 Docker 怎么虚拟化容器的网络,隔离程度和共享程度。

bridge 模式

使用 Docker 创建一个 bridge 模式的容器命令格式如下:

docker run -itd -p 8080:80 Nginx:latest

bridge 模式称为网桥模式,首先 Docker 会在主机上创建一个名为 docker0 的虚拟网桥,这个虚拟网络处于七层网络模型的数据链路层,每当创建一个新的容器时,容器都会通过 docker0 与主机的网络连接,docker0 相当于网桥。

使用 bridge 模式新创建的容器,其内部都有一个虚拟网卡,名为 eth0,容器之间可以通过 172.17.x.x 相互访问。

一般情况下,网桥默认 IP 范围是 172.17.x.x ,可以在宿主机执行 ifpconfig 命令查看所有网卡,里面会包含 Docker 容器的虚拟网卡,可以查看某个容器的 ip。在容器中,也可以使用 ifconfig 命令查看自身的容器 ip:

root@cda6958393cb:/var# ./ifconfig 
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.17.0.2  netmask 255.255.0.0  broadcast 172.17.255.255
        ether 02:42:ac:11:00:02  txqueuelen 0  (Ethernet)
        RX packets 347  bytes 9507996 (9.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 278  bytes 22384 (22.3 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

可以看到,此容器的 ip 是 172.17.0.2。

使用了 bride 创建的容器,其网络与主机以及其他容器隔离,以太网接口、端口、路由表以及 DNS配置 都是独立的。每个容器都好像是一个独立的主机 ,这便是 bridge(网桥)的作用。但是因为 docker0 的存在,对于容器来说,可以通过 ip 访问别的容器。

容器1 可以通过 172.17.0.3 访问容器2,同样,主机也可以使用这个 ip 访问容器2 中的服务。

[Error] 提示

bridge 模式 是默认模式,即使是 使用 docker run -itd nginx:latest 命令启动容器,也会创建一个虚拟 IP。

none 模式

这种网络模式下容器只有 lo 回环网络,没有其他网卡,这种类型的网络没有办法联网,外界也无法访问它,封闭的网络能很好地保证容器的安全性。

创建 none 网络的容器:

docker run -itd --net=none nginx:latest
root@5a67da130f62:/var# ./ifconfig 
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

host 模式

host 模式会让容器与主机共享网络,此时映射的端口可能会生产冲突,但是容器的其余部分(文件系统、进程等)依然是隔离的,此时容器与宿主机共享网络。

container 模式

container 模式可以让多个容器之间相互通讯,即容器之间共享网络。

首先启动一个 A 容器,A 一般为 bridge 网络,接着 B 使用 –-net={id} 连接到 A 中,使用 A 的虚拟网卡,此时 A、B 共享网络,可以接着加入 B、C、D 等容器。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: Docker的四种网络模式

本文链接: https://www.lsjlt.com/news/145029.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Docker的四种网络模式
    Docker 的四种网络模式 Docker 有 bridge、none、host、container 四种网络模式,提供网络隔离、端口映射、容器间互通网络等各种支持,下面开门见山地直...
    99+
    2024-04-02
  • Docker中的四种网络模式
    目录实现原理四类网络模式host模式container模式none模式bridge模式实现原理 Docker使用Linux桥接,在宿主机虚拟一个Docker容器网桥(docker0)...
    99+
    2023-05-17
    Docker四种网络模式 Docker网络模式
  • Docker四种网络模式是什么
    这篇文章主要介绍“Docker四种网络模式是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Docker四种网络模式是什么”文章能帮助大家解决问题。1.安装doc...
    99+
    2024-04-02
  • Docker的四种网络模式是什么
    这篇文章主要介绍“Docker的四种网络模式是什么”,在日常操作中,相信很多人在Docker的四种网络模式是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker的四种网络模式是什么”的疑惑有所帮助!...
    99+
    2023-06-29
  • Docker四种网络模式演示及连通性测试
    目录Docker 的四种网络模式host 模式host 模式演示container 模式container 模式演示none 模式 none 模式演示bridge 模式&n...
    99+
    2024-04-02
  • 深入解析docker三种网络模式
    目录1.docker默认的三种网络模式:2.桥接模式3.host模式4.none模式1.docker默认的三种网络模式: bridge:桥接模式 host:主机模式 none:无网络...
    99+
    2024-04-02
  • Docker网络模型使用详解(2)Docker网络模式
    安装Docker时会自动创建3个网络,可以使用docker network ls命令列出这些网络。 [root@localhost ~]# docker network ls NETWORK ID     NAME          ...
    99+
    2023-09-08
    docker 容器 linux 运维
  • Docker的网络模式介绍
    这篇文章主要介绍“Docker的网络模式介绍”,在日常操作中,相信很多人在Docker的网络模式介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker的网络模式介绍”...
    99+
    2024-04-02
  • Docker网络模式详解
    目录 Docker网络模式 一、Host模式 二、container模式 三、none模式 四、bridge模式 五、Overlay模式 Docker网络模式         安装Docker时会自动创建3个网络,可以使用docker ...
    99+
    2023-10-19
    docker 容器 运维 学习 网络
  • docker的网络模式有哪些
    Docker的网络模式有以下几种: bridge(默认):Docker在主机上创建一个虚拟的网络桥接接口,容器加入到这个网络中后可...
    99+
    2023-10-30
    docker
  • Docker 网络模式及配置方式
    一、Docker网络模式 docker run 创建 Docker 容器时,可以用 –net 选项指定容器的网络模式,Docker 有以下 4 种网络模式: host 模式,使用 –...
    99+
    2024-04-02
  • docker容器网络模式详解
    目录bridge - 桥接模式host - 站点模式container - 容器模式none模式overlay 模式bridge - 桥接模式 上期有提到我们可以使用docker c...
    99+
    2022-11-13
    docker 容器网络模式 docker 网络模式
  • Docker网络模式及配置方式的示例
    这篇文章将为大家详细讲解有关Docker网络模式及配置方式的示例,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、Docker网络模式docker run 创建 Docker 容器时,可以用 –net 选...
    99+
    2023-06-14
  • SpringSecurityoAuth2.0的四种模式(小结)
    目录1.1. 授权码授权模式(Authorization code Grant)1.1.1. 流程图1.1.2. 授权服务器配置配置1.1.3. 资源服务器配置1.1.5. 使用场景...
    99+
    2024-04-02
  • Android的四种启动模式
    一、Activity的四种启动模式: standard(标准模式):一个定义Activity在mainfest中不设置android:launchMode=“standard”,也会默认为standa...
    99+
    2023-10-10
    android kotlin java
  • docker如何查看container-none网络模式
    小编给大家分享一下docker如何查看container-none网络模式,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!cont...
    99+
    2024-04-02
  • mysql中四种备份模式
    目录mysql 常用的几种备份方式和方法mysql dump常用的几种方式常用的使用几种备份mysqldumpshellpython 脚本mysql 常用的几种备份方式和方法 1 使用mysqldump命令行工具进行备份...
    99+
    2023-11-10
    mysql 备份模式 mysql 备份
  • Kubernetes网络的四种场景是什么
    这篇文章主要讲解了“Kubernetes网络的四种场景是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Kubernetes网络的四种场景是什么”吧!在实...
    99+
    2024-04-02
  • Android 单例模式的四种实现方式
    目录一.饿汉式二.懒汉式三.双重检查加锁方式四.静态内部类方式总结一.饿汉式 public class SingletionStarving { private sta...
    99+
    2024-04-02
  • Java中的四种单例模式浅析
    前言近期在做支付,一开始图省事,也是为了调试方便,支付的alipayClient和tradeService都是使用的时候去拿,这样就会导致创建多次。为了节省资源,统一配置成单例模式。什么是单例Singleton(单例)是设计模式的一种,为了...
    99+
    2023-05-31
    java 单例模式 ava
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作