【Docker】Docker中network的概要、常用命令、网络模式以及底层ip和容器映射变化的详细讲解

这篇具有很好参考价值的文章主要介绍了【Docker】Docker中network的概要、常用命令、网络模式以及底层ip和容器映射变化的详细讲解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🚀欢迎来到本文🚀
🍉个人简介:陈童学哦,目前学习C/C++、算法、Python、Java等方向,一个正在慢慢前行的普通人。
🏀系列专栏:陈童学的日记
💡其他专栏:C++STL,感兴趣的小伙伴可以看看。
🎁希望各位→点赞👍 + 收藏⭐️ + 留言📝 ​
⛱️万物从心起,心动则万物动🏄‍♂️

【Docker】Docker中network的概要、常用命令、网络模式以及底层ip和容器映射变化的详细讲解,陈童学的日记,docker,云原生,网络,tcp/ip,linux

前言:Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux系统 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

Docker network的概要

Docker网络是Docker容器之间和容器与外部世界之间进行通信的关键组件。它允许容器之间相互通信,并提供与外部网络的连接。下面是关于Docker网络的一些概要:

  • 1.Docker网络模型:
      Docker网络模型包括三个主要组件:容器、网络和端点。容器是运行应用程序的独立环境,网络提供容器之间和容器与外部世界之间的通信路径,而端点则是连接容器和网络的桥梁。

  • 2.Docker网络类型:
      Docker支持多种网络类型,包括桥接网络、主机网络、覆盖网络和无网络。桥接网络是默认的网络类型,它使用Docker daemon主机上的桥接接口将容器连接到主机网络。主机网络直接将容器连接到主机网络接口,使得容器可以直接访问主机上的网络资源。覆盖网络是多个Docker守护进程连接在一起的虚拟网络,它允许容器在不同主机上进行通信。无网络类型则表示容器没有网络访问能力。

  • 3.Docker网络驱动程序:
      Docker网络驱动程序负责创建和管理Docker网络。常见的驱动程序包括bridge、host、overlay等。bridge驱动程序是默认的网络驱动程序,它创建一个本地的软件桥接接口,用于连接容器和宿主机的网络。host驱动程序直接使用宿主机网络接口,使得容器可以直接访问宿主机的网络资源。overlay驱动程序用于创建跨多个Docker守护进程的覆盖网络。

  • 4.Docker网络命令:
      Docker提供了一组命令来管理和配置网络。常见的命令包括docker network create用于创建网络,docker network connect用于连接容器到网络,docker network inspect用于查看网络信息等。

  • 5.Docker网络的使用场景:
      Docker网络可用于各种使用场景,包括单主机部署、多主机集群、微服务架构等。通过使用不同的网络类型和驱动程序,可以灵活地配置和管理Docker网络,以满足不同的需求。

【Docker】Docker中network的概要、常用命令、网络模式以及底层ip和容器映射变化的详细讲解,陈童学的日记,docker,云原生,网络,tcp/ip,linux

network的常用命令

上面我们提及到了Docker network,那么关于network的常用命令有哪些呢?让我们一起来看看吧。

  • 1.创建网络:
docker network create <network_name>

该命令用于创建一个新的Docker网络,其中<network_name>是网络的名称。

  • 2.列出网络:
docker network ls

该命令用于列出所有可用的Docker网络。

  • 3.查看网络详情:
docker network inspect <network_name>
  • 4.连接容器到网络:
docker network connect <network_name> <container_name>

该命令用于将已创建的容器连接到指定的Docker网络中,其中<network_name>是网络名称,<container_name>是容器名称或ID。

  • 5.断开容器与网络的连接:
docker network disconnect <network_name> <container_name>

该命令用于断开指定容器与指定Docker网络的连接

  • 6.删除网络:
docker network rm <network_name>

该命令用于删除指定的Docker网络,其中<network_name>是要删除的网络名称。

以上就是一些常用的Docker网络命令啦,可以用于创建、管理和删除Docker网络。如有问题,欢迎各位指出
【Docker】Docker中network的概要、常用命令、网络模式以及底层ip和容器映射变化的详细讲解,陈童学的日记,docker,云原生,网络,tcp/ip,linux

network的网络模式

接下来让我们来看看network的网络模式有哪几种呢。Docker提供了多种网络模式,可以根据不同的需求选择适合的网络模式。以下是一些常见的Docker网络模式:

  • 1.Bridge模式(桥接模式):
      桥接模式是默认的Docker网络模式。在桥接模式下,Docker会为每个容器分配一个唯一的IP地址,并将它们连接到宿主机上的桥接接口。容器之间可以通过IP地址进行通信,也可以通过容器名称进行通信。此外,桥接模式允许容器与宿主机以及宿主机上的其他网络资源进行通信。

  • 2.Host模式(主机模式):
      主机模式下,Docker容器与宿主机共享网络栈。容器将直接使用宿主机的网络接口,而不会获得自己的网络命名空间。这意味着容器可以使用宿主机上的所有网络资源,包括IP地址、端口等。由于与宿主机共享网络栈,容器之间的端口冲突可能会发生。

  • 3.None模式(无网络模式):
      在无网络模式下,Docker容器没有网络连接。这意味着容器无法访问外部网络,也无法与其他容器进行通信。无网络模式适用于一些安全性要求较高的场景,或者仅需要运行计算型任务而不涉及网络通信的场景。

  • 4.Overlay模式(覆盖模式):
      覆盖模式用于创建跨多个Docker守护进程的覆盖网络。覆盖网络允许不同宿主机上的容器之间进行通信,使得容器可以在多主机集群中无缝运行。覆盖网络使用了Swarm模式,它是Docker的集群管理工具。

network底层ip和容器映射变化

  在Docker网络中,有两个关键的概念:底层IP和容器映射

  • 1.底层IP:每个Docker容器都会分配一个底层IP地址,这个地址是在Docker宿主机上的虚拟网络接口上分配的。底层IP是容器内部使用的IP地址,用于容器内部进程之间的通信。

  • 2.容器映射:容器映射是指将容器的端口映射到宿主机的端口,以便容器可以通过宿主机的网络接口与外部进行通信。当我们在创建容器时使用-p--publish参数指定端口映射规则时,Docker会将容器内部的端口映射到宿主机上的一个随机端口或指定的端口上。

  具体来说,当我们创建一个Docker容器并指定端口映射规则时,Docker会在宿主机上创建一个转发规则,将宿主机上的指定端口与容器内部的端口进行绑定。这样,当外部系统通过宿主机的IP地址和绑定的端口访问时,请求会被转发到容器内部的对应端口上。

  举个例子,假设我们创建了一个名为webappDocker容器,并将容器内部的80端口映射到宿主机的8080端口。那么,当我们通过宿主机的IP地址和8080端口访问时,请求会被转发到容器内部的80端口,从而访问到容器中运行的Web应用。

  综上所述的话呢,底层IP是容器内部使用的IP地址,用于容器内部进程之间的通信;而容器映射是将容器的端口映射到宿主机的端口,以便容器可以与外部网络进行通信。通过这种方式,Docker网络提供了灵活且可定制的网络配置选项,使得容器可以轻松地与其他容器和外部系统进行通信。

【Docker】Docker中network的概要、常用命令、网络模式以及底层ip和容器映射变化的详细讲解,陈童学的日记,docker,云原生,网络,tcp/ip,linux

如果本文对大家有所帮助的话,还望各位能给我点赞、收藏并评论一下,感谢各位💕!!! 另如果大家有什么疑问或者建议的话,欢迎评论区留言。文章来源地址https://www.toymoban.com/news/detail-633585.html

到了这里,关于【Docker】Docker中network的概要、常用命令、网络模式以及底层ip和容器映射变化的详细讲解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • docker-compose简介以及常用命令

    什么是docker-compose compose 是用来定义和运行一个或多个容器(通常都是多个)运行和应用的工具。使用 compose 可以简化容器镜像的构建以及容器的运行。 安装docker-compose需要在Linux系统上运行以下命令: 1.使用curl命令下载docker-compose二进制文件: 2.为二进制文件添加可执行权限:

    2024年02月10日
    浏览(38)
  • 【Linux】安装配置解决Centos&MobaXterm的使用及Linux常用命令以及命令模式

    目录 Centos的介绍 centos安装配置MobaXterm 创建  安装  ​编辑  配置 ​编辑  MobaXterm使用  Linux常用命令模式   常用命令 vi或vim编辑器  三种模式  命令模式 编辑模式   末行模式 拍照备份  CentOS(Community Enterprise Operating System)是一个基于Red Hat Enterprise Linux (RHEL) 源代码编

    2024年02月06日
    浏览(42)
  • vim的使用、vim入门的三种常用模式、以及vim中常用的命令(超详细)

    vim 入门的三种常用模式:分别是 1. 命令模式、2. 插入/编辑模式、3. 底行模式 1. 命令模式         控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode 如下,这个就是命令模式: 2. 插入/编辑模式         只有在Insert m

    2024年02月05日
    浏览(38)
  • Docker的四种网络模式和相关网络命令

    docker 使用linux 桥接,在宿主机虚拟一个docker 容器网桥(docker0) ,docker 启动一个容器时会根据docker 网桥的网段分配给容器一个IP地址,称为Container-IP,同时Docker 网桥是每个容器的默认网关。因为在同一宿主机内的容器都接入同一个网桥,这样容器之间就能够通过容器的 Cont

    2024年02月05日
    浏览(43)
  • Redis——基础篇(包含redis在云服务上的docker化安装和连接以及常用命令)

    Redis为键值型数据库,数据以键值形式存储。没有表,没有约束。  mysql就是典型的关系型数据库(SQL)。 目的都是数据的增删改查,但数据存储方式不一样。   关系型和非关系型在结构上有差异 关系型的结构一般定好后就很少修改,非关系型的就更加自由  关系型数据库的关

    2024年02月13日
    浏览(48)
  • docker network create命令

    docker network create 命令用于创建一个新的网络连接。 DRIVER 接受内置网络驱动程序的桥接或覆盖。如果安装了第三方或自己的自定义网络驱动程序,则可以在此处指定 DRIVER 。 如果不指定 --driver 选项,该命令将为您自动创建一个桥接网络。 当安装 Docker Engine 时,会自动创建桥

    2024年02月08日
    浏览(29)
  • win10自带Hyper-V安装CentOS7网络配置安装Docker,里面再安装Centos图文教程 docker常用命令

    ps每个主板不一样,百度自己主板加 BIOS开起虚拟化,即可。 阿里云下载:centos-7-isos-x86_64安装包下载_开源镜像站-阿里云 建议下载 Minimal 这个版本,900M最小安装。DVD版本较大,但是里面会有很多东西,包括图形化界面。     如果启动出现错误,请在安全里面,把启用安全启动

    2024年02月16日
    浏览(48)
  • 【Docker】Docker Network(网络)

    容器的网络默认与宿主机及其他容器都是相互隔离 , 但同时我们也要考虑下面的一些问题, 比如: 多个容器之间是如何通信的 容器和宿主机是如何通信的 容器和外界主机是如何通信的 容器中要运行一些网络应用(如 nginx、 web 应用、数据库等),如果要让外部也可以访问这

    2024年04月27日
    浏览(41)
  • 【Docker】Docker高级网络(NetWork)

    参考文档:高级网络配置 · Docker – 从入门到实践 (docker-practice.github.io) 当 Docker 启动时,会自动在主机上创建一个 docker0 虚拟网桥,实际上是 Linux 的一个 bridge,可以理解为一个软件交换机。它会在挂载到它的网口之间进行转发。 同时,Docker 随机分配一个本地未占用的私有

    2024年02月16日
    浏览(35)
  • Docker网络network详解

    Docker 容器每次重启后容器 ip 是会发生变化的。 这也意味着如果容器间使用 ip 地址来进行通信的话,一旦有容器重启,重启的容器将不再能被访问到。 而 Docker 网络就能够解决这个问题。 Docker 网络主要有以下两个作用: 容器间的互联和通信以及端口映射 容器 IP 变动时候可

    2024年02月02日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包