摘要: 上节我们学习了容器如何访问外部网络,今天讨论另一个方向:外部网络如何访问到容器? 答案是:端口映射。 docker 可将容器对外提供服务的端口映射到 host 的某个端口,外网通过该端口访问容器。容器启动时通过-p参数映射端口: 容器启动后,可通过 docker ps 或者 docker port  阅读全文
posted @ 2019-05-25 18:21 bwzbk 阅读(694) 评论(0) 推荐(0) 编辑
摘要: 前面我们已经解决了容器间通信的问题,接下来讨论容器如何与外部世界通信。这里涉及两个方向: 容器访问外部世界 外部世界访问容器 容器访问外部世界 在我们当前的实验环境下,docker host 是可以访问外网的。 我们看一下容器是否也能访问外网呢? 可见,容器默认就能访问外网。 请注意:这里外网指的是 阅读全文
posted @ 2019-05-25 17:47 bwzbk 阅读(841) 评论(0) 推荐(0) 编辑
摘要: 容器之间可通过 IP,Docker DNS Server 或 joined 容器三种方式通信。 IP 通信 从上一节的例子可以得出这样一个结论:两个容器要能通信,必须要有属于同一个网络的网卡。 满足这个条件后,容器就可以通过 IP 交互了。具体做法是在容器创建时通过 --network 指定相应的网 阅读全文
posted @ 2019-05-25 17:23 bwzbk 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 1、列表是什么 列表是由一系列按特定顺序排列的元素组成。 鉴于列表通常包含多个元素,给列表制定一个表示复数的名称(如letters,digits或names)是个不错的主意。 在Python中,用方括号([ ])来表示列表,并用逗号来分割其中元素。 1.访问列表元素 列表是有序集合,因此要访问列表的 阅读全文
posted @ 2019-05-24 18:20 bwzbk 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 两个 busybox 容器都挂在 my_net2 上,应该能够互通,我们验证一下: 可见同一网络中的容器、网关之间都是可以通信的。 my_net2 与默认 bridge 网络能通信吗? 从拓扑图可知,两个网络属于不同的网桥,应该不能通信,我们通过实验验证一下: 原因就在这里了:iptables DR 阅读全文
posted @ 2019-05-24 17:11 bwzbk 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 除了 none, host, bridge 这三个自动创建的网络,用户也可以根据业务需要创建 user-defined 网络。 Docker 提供三种 user-defined 网络驱动:bridge, overlay 和 macvlan。overlay 和 macvlan 用于创建跨主机的网络,我 阅读全文
posted @ 2019-05-24 15:48 bwzbk 阅读(177) 评论(0) 推荐(0) 编辑
摘要: Docker 安装时会创建一个 命名为 docker0 的 linux bridge。如果不指定--network,创建的容器默认都会挂到 docker0 上。 apt-get install bridge-utils 当前 docker0 上没有任何其他网络设备,我们创建一个容器看看有什么变化 一 阅读全文
posted @ 2019-05-24 12:53 bwzbk 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 我们会首先学习 Docker 提供的几种原生网络,以及如何创建自定义网络。然后探讨容器之间如何通信,以及容器与外界如何交互。 Docker 网络从覆盖范围可分为单个 host 上的容器网络和跨多个 host 的网络,本章重点讨论前一种。对于更为复杂的多 host 容器网络,我们会在后面进阶技术章节单 阅读全文
posted @ 2019-05-24 10:50 bwzbk 阅读(416) 评论(0) 推荐(0) 编辑
摘要: 为了更好地理解容器的特性,本节我们将讨论容器的底层实现技术。cgroup 和 namespace 是最重要的两种技术。cgroup 实现资源限额, namespace 实现资源隔离。 cgroup cgroup 全称 Control Group。Linux 操作系统通过 cgroup 可以设置进程使 阅读全文
posted @ 2019-05-23 20:24 bwzbk 阅读(265) 评论(0) 推荐(0) 编辑
摘要: Block IO 是另一种可以限制容器使用的资源。Block IO 指的是磁盘的读写,docker 可通过设置权重、限制 bps 和 iops 的方式控制容器读写磁盘的带宽,下面分别讨论。 注:目前 Block IO 限额只对 direct IO(不使用文件缓存)有效。 默认情况下,所有容器能平等地 阅读全文
posted @ 2019-05-23 15:36 bwzbk 阅读(464) 评论(0) 推荐(0) 编辑