【转帖】Docker容器四种网络模式

docker,容器,四种,网络,模式 · 浏览次数 : 0

小编点评

**docker网络模式介绍** **none 模式** * 容器创建时不提供网卡或路由信息。 * 用户可根据需求自定义网络环境。 **bridge 模式** * 容器与宿主机共享网络名称空间。 * 用户可通过 `docker run` 命令设置容器与宿主机之间的网关名称。 **container 模式** * 容器与已存在的容器共享网络名称空间。 * 容器创建时默认使用 `container` 模式。 **host 模式** * 容器与宿主机共享同一个网络名称空间。 * 使用宿主机的 IP 地址和端口等信息创建容器。 * 与 `container` 模式不同,其他名称空间(用户、文件系统等)仍然独立。

正文

  • https://blog.whsir.com/post-5268.html

     

docker自身默认提供了四种网络模式:none、bridge、container、host。除了这四种网络模式外,还可以通过插件自定义一些网络模式,比如macvlan、overlay等。

默认的这四种网络模式其实很好理解,建议自行动手尝试一下!

none模式

--network none:none模式下创建的容器除了自带的lo回环网卡设备外,没有任何网卡、路由等信息,就是一种封闭式容器。这种模式下给了用户很大的自由度,用户可以根据自己的需求来定义网络环境。

例:docker run --name none --network none -it --rm busybox

bridge模式(默认)

--network bridge:这是容器默认的设置,创建的容器默认会连接到docker的网桥上(即docker0),通过docker网桥及iptables nat表配置与宿主机进行通信。

container模式

--network container:指定新创建的容器与已存在的容器共享网络名称空间,新创建的容器不会创建网卡,而是与已存在的容器共享一个网卡、IP等,两个容器之间可以通过lo回环网卡设备进行通信,但是其他名称空间,比如用户、文件系统等还是和容器隔离开的。

例:
docker run --name web1 -it --rm busybox
docker run --name web2 --network container:web1 -it --rm busybox
可以通过ifconfig命令看到,web2容器与web1容器共用一个ip地址

host模式

--network host:与container模式有些类似,container模式是容器和容器之间共享网络名称空间,host模式下docker不会为容器创建网络名称空间而是与宿主机共用一个网络名称空间,并使用宿主机的网卡、端口等信息,但是其他名称空间,比如用户、文件系统等还是和宿主机隔离开的。

例如:我们在宿主机上通过host模式启动一个nginx容器,并监听80端口,此时在容器内部通过ifconfig或ip命令查看网络环境时,所看到的信息和宿主机的信息一致,就好比nginx直接运行在宿主机一样,但是,用户、文件系统等还是和宿主机隔离开的。

与【转帖】Docker容器四种网络模式相似的内容:

【转帖】Docker容器四种网络模式

https://blog.whsir.com/post-5268.html docker自身默认提供了四种网络模式:none、bridge、container、host。除了这四种网络模式外,还可以通过插件自定义一些网络模式,比如macvlan、overlay等。 默认的这四种网络模式其实很好理解,

[转帖]Centos下使用containerd管理容器:5分钟从docker转型到containerd

https://www.cnblogs.com/renshengdezheli/p/16684175.html 目录 一.系统环境 二.前言 三.containerd 四.部署containerd 4.1 安装containerd 4.2 containerd配置文件 4.3 配置container

[转帖]docker容器跨主机网络overlay

https://www.cnblogs.com/machangwei-8/p/15757120.html 目录 拉取镜像,运行容器 浏览器上访问Consul 修改host1,host2的docker daemon配置文件 创建网络 验证 在overlay中运行容器 运行 查看一下这两个网卡 查看生成

[转帖]Docker容器跨主机通信overlay网络的解决方案

https://www.jb51.net/article/237838.htm 一、Docker主机间容器通信的解决方案 Docker网络驱动 Overlay: 基于VXLAN封装实现Docker原生Overlay网络 Macvlan: Docker主机网卡接口逻辑上分为多个子接口,每个子接口标识一

[转帖]docker 容器基础技术:linux cgroup 简介

https://cizixs.com/2017/08/25/linux-cgroup/ Linux cgroups 的全称是 Linux Control Groups,它是 Linux 内核的特性,主要作用是限制、记录和隔离进程组(process groups)使用的物理资源(cpu、memory、

[转帖]Docker容器动态添加端口

方法1 修改iptables端口映射 docker的端口映射并不是在docker技术中实现的,而是通过宿主机的iptables来实现。通过控制网桥来做端口映射,类似路由器中设置路由端口映射。 比如我们有一个容器的80端口映射到主机的8080端口,先查看iptables到底设置了什么规则:登录后复制

[转帖]Docker容器管理技术-高级网络管理

Docker容器管理技术-高级网络管理 https://www.jianshu.com/p/5859a2fe4377 1. Docker本地网络类型 1.1查看支持网络类型 docker network ls 1.2 测试使用各类网络类型 docker run network=xxx none :

[转帖]Docker 容器运行 ivorysql 之体验

当下容器运行应用已经越来越火,只要主机上能运行 Docker,就可以通过镜像来运行应用,不需要考虑环境是否满足应用的运行条件。今天就给大家分享一下使用镜像运行 ivorysql 数据库。如果你容器运行过 postgresql,那就比较容易上手了,几乎是一样的体验,稍微有点差别,后面会说明。 友情提示

[转帖]docker容器自动重启,看完这篇彻底明白了

一. JVM内存区域的划分 1.1 java虚拟机运行时数据区 java虚拟机运行时数据区分布图: JVM栈(Java Virtual Machine Stacks): Java中一个线程就会相应有一个线程栈与之对应,因为不同的线程执行逻辑有所不同,因此需要一个独立的线程栈,因此栈存储的信息都是跟当

[转帖]Docker容器无法访问网络问题(网段冲突)

近日在使用docker在腾讯云服务器上部署项目 运行容器时死活访问不了网络,不论是外网还是内网。 最后找到原因是docker容器ip网段与服务器内网ip网段冲突导致的 使用此命令查看到 ifconfig 1 可以看到ip段冲突了 咱们重建docker的ip段 首先删除docker的网卡docker0