docker managed volume – 每天5分钟玩转 Docker 容器技术(40)

docker managed volume – 每天5分钟玩转 Docker 容器技术(40)

5天前

docker managed volume 与 bind mount 在使用上的最大区别是不需要指定 mount 源,指明 mount point 就行了。还是以 httpd 容器为例: 我们通过 -v 告诉 docker 需要一个 data volume,并将其 mount 到 /usr/local/apache2/htdocs。那么这个 data volume 具体在哪儿呢? 这个答案可以在容

Data Volume 之 bind mount – 每天5分钟玩转 Docker 容器技术(39)

Data Volume 之 bind mount – 每天5分钟玩转 Docker 容器技术(39)

5天前

storage driver 和 data volume 是容器存放数据的两种方式,上一节我们学习了 storage driver,本节开始讨论 Data Volume。 Data Volume 本质上是 Docker Host 文件系统中的目录或文件,能够直接被 mount 到容器的文件系统中。Data Volume 有以下特点: Data Volume 是目录或文件,而非没有格式化的磁盘(块设

Docker 的两类存储资源 – 每天5分钟玩转 Docker 容器技术(38)

Docker 的两类存储资源 – 每天5分钟玩转 Docker 容器技术(38)

2周前 (04-08)

我们从本章开始讨论 Docker 存储。 Docker 为容器提供了两种存放数据的资源: 由 storage driver 管理的镜像层和容器层。 Data Volume。 我们会详细讨论它们的原理和特性。 storage driver 在前面镜像章节我们学习到 Docker 镜像的分层结构,简单回顾一下。 容器由最上面一个可写的容器层,以及若干只读的镜像层组成,容器的数据就存放在这些层中。这样的

外部世界如何访问容器? – 每天5分钟玩转 Docker 容器技术(37)

外部世界如何访问容器? – 每天5分钟玩转 Docker 容器技术(37)

2周前 (04-08)

上节我们学习了容器如何访问外部网络,今天讨论另一个方向:外部网络如何访问到容器? 答案是:端口映射。 docker 可将容器对外提供服务的端口映射到 host 的某个端口,外网通过该端口访问容器。容器启动时通过-p参数映射端口: 容器启动后,可通过 docker ps 或者 docker port 查看到 host 映射的端口。在上面的例子中,httpd 容器的 80 端口被映射到 host 32

容器如何访问外部世界?- 每天5分钟玩转 Docker 容器技术(36)

容器如何访问外部世界?- 每天5分钟玩转 Docker 容器技术(36)

2周前 (04-08)

前面我们已经解决了容器间通信的问题,接下来讨论容器如何与外部世界通信。这里涉及两个方向: 容器访问外部世界 外部世界访问容器 容器访问外部世界 在我们当前的实验环境下,docker host 是可以访问外网的。 我们看一下容器是否也能访问外网呢? 可见,容器默认就能访问外网。 请注意:这里外网指的是容器网络以外的网络环境,并非特指 internet。 现象很简单,但更重要的:我们应该理解现象下的本

容器间通信的三种方式 – 每天5分钟玩转 Docker 容器技术(35)

容器间通信的三种方式 – 每天5分钟玩转 Docker 容器技术(35)

2周前 (04-08)

容器之间可通过 IP,Docker DNS Server 或 joined 容器三种方式通信。 IP 通信 从上一节的例子可以得出这样一个结论:两个容器要能通信,必须要有属于同一个网络的网卡。 满足这个条件后,容器就可以通过 IP 交互了。具体做法是在容器创建时通过 --network 指定相应的网络,或者通过 docker network connect 将现有容器加入到指定网络。可参考上一节

理解容器之间的连通性 – 每天5分钟玩转 Docker 容器技术(34)

理解容器之间的连通性 – 每天5分钟玩转 Docker 容器技术(34)

3周前 (04-04)

通过前面小节的实践,当前 docker host 的网络拓扑结构如下图所示,今天我们将讨论这几个容器之间的连通性。 两个 busybox 容器都挂在 my_net2 上,应该能够互通,我们验证一下: 可见同一网络中的容器、网关之间都是可以通信的。 my_net2 与默认 bridge 网络能通信吗? 从拓扑图可知,两个网络属于不同的网桥,应该不能通信,我们通过实验验证一下,让 busybox 容器

如何自定义容器网络?- 每天5分钟玩转 Docker 容器技术(33)

如何自定义容器网络?- 每天5分钟玩转 Docker 容器技术(33)

3周前 (04-04)

除了 none, host, bridge 这三个自动创建的网络,用户也可以根据业务需要创建 user-defined 网络。 Docker 提供三种 user-defined 网络驱动:bridge, overlay 和 macvlan。overlay 和 macvlan 用于创建跨主机的网络,我们后面有章节单独讨论。 我们可通过 bridge 驱动创建类似前面默认的 bridge 网络,例如:

学容器必须懂 bridge 网络 – 每天5分钟玩转 Docker 容器技术(32)

学容器必须懂 bridge 网络 – 每天5分钟玩转 Docker 容器技术(32)

3周前 (04-04)

上一节我们讨论了 none 和 host 类型的容器网络,本节学习应用最广泛也是默认的 bridge 网络。 Docker 安装时会创建一个 命名为 docker0 的 linux bridge。如果不指定--network,创建的容器默认都会挂到 docker0 上。 当前 docker0 上没有任何其他网络设备,我们创建一个容器看看有什么变化。 一个新的网络接口 veth28c57df 被挂到

运维工程师必备技能:网络排错思路讲解

运维工程师必备技能:网络排错思路讲解

3周前 (04-01)

首先,真心希望本文可以给需要进行网络排错的朋友带来实际性的帮助, 也希望可以耐心看下去。 网络排错对于网络工程师或运维人员甚至对很多人(搞IT的朋友们)都十分重要,因此知道网络排错的一个详细流程以及流程中每一步的原理就显得非常重要了,当网络出现问题时,我们就可以迅速排查出网络问题所在,从而快速解决网络问题。 这 里要说的网络排错,应该是适合大部分对网络有一定了解的人员的,其实关于网络排错的方法,网

none 和 host 网络的适用场景 – 每天5分钟玩转 Docker 容器技术(31)

none 和 host 网络的适用场景 – 每天5分钟玩转 Docker 容器技术(31)

1个月前 (03-21)

本章开始讨论 Docker 网络。 我们会首先学习 Docker 提供的几种原生网络,以及如何创建自定义网络。然后探讨容器之间如何通信,以及容器与外界如何交互。 Docker 网络从覆盖范围可分为单个 host 上的容器网络和跨多个 host 的网络,本章重点讨论前一种。对于更为复杂的多 host 容器网络,我们会在后面进阶技术章节单独讨论。 Docker 安装时会自动在 host 上创建三个网络

实现容器的底层技术 – 每天5分钟玩转 Docker 容器技术(30)

实现容器的底层技术 – 每天5分钟玩转 Docker 容器技术(30)

1个月前 (03-21)

为了更好地理解容器的特性,本节我们将讨论容器的底层实现技术。 cgroup 和 namespace 是最重要的两种技术。cgroup 实现资源限额, namespace 实现资源隔离。 cgroup cgroup 全称 Control Group。Linux 操作系统通过 cgroup 可以设置进程使用 CPU、内存 和 IO 资源的限额。相信你已经猜到了:前面我们看到的--cpu-shares、

限制容器的 Block IO – 每天5分钟玩转 Docker 容器技术(29)

限制容器的 Block IO – 每天5分钟玩转 Docker 容器技术(29)

1个月前 (03-21)

前面学习了如何限制容器对内存和CPU的使用,本节我们来看 Block IO。 Block IO 是另一种可以限制容器使用的资源。Block IO 指的是磁盘的读写,docker 可通过设置权重、限制 bps 和 iops 的方式控制容器读写磁盘的带宽,下面分别讨论。 注:目前 Block IO 限额只对 direct IO(不使用文件缓存)有效。 block IO 权重 默认情况下,所有容器能平等

限制容器对CPU的使用 – 每天5分钟玩转 Docker 容器技术(28)

限制容器对CPU的使用 – 每天5分钟玩转 Docker 容器技术(28)

1个月前 (03-14)

上节学习了如何限制容器对内存的使用,本节我们来看CPU。 默认设置下,所有容器可以平等地使用 host CPU 资源并且没有限制。 Docker 可以通过 -c 或 --cpu-shares 设置容器使用 CPU 的权重。如果不指定,默认值为 1024。 与内存限额不同,通过 -c 设置的 cpu share 并不是 CPU 资源的绝对数量,而是一个相对的权重值。某个容器最终能分配到的 CPU 资

限制容器对内存的使用 – 每天5分钟玩转 Docker 容器技术(27)

限制容器对内存的使用 – 每天5分钟玩转 Docker 容器技术(27)

1个月前 (03-14)

一个 docker host 上会运行若干容器,每个容器都需要 CPU、内存和 IO 资源。对于 KVM,VMware 等虚拟化技术,用户可以控制分配多少 CPU、内存资源给每个虚拟机。对于容器,Docker 也提供了类似的机制避免某个容器因占用太多资源而影响其他容器乃至整个 host 的性能。 内存限额 与操作系统类似,容器可使用的内存包括两部分:物理内存和 swap。 Docker 通过下面两

一张图搞懂容器所有操作 – 每天5分钟玩转 Docker 容器技术(26)

一张图搞懂容器所有操作 – 每天5分钟玩转 Docker 容器技术(26)

1个月前 (03-14)

前面我们已经讨论了容器的各种操作,对容器的生命周期有了大致的理解,下面这张状态机很好地总结了容器各种状态之间是如何转换的。 如果掌握了前面的知识,要看懂这张图应该不难。不过有两点还是需要补充一下: 1、可以先创建容器,稍后再启动。  ① docker create 创建的容器处于 Created 状态。 ② docker start 将以后台方式启动容器。 docker run 命令实际上是 do

Centos 7 配置阿里云的yum源

Centos 7 配置阿里云的yum源

1个月前 (03-08)

yum是centos下更新、管理软件的命令,也有相应的图像界面版本; yum源是yum命令去哪里取安装包的地图; yum命令查询repo上配置的地址去取相应的rpm包进行安装; 1、备份系统原来的yum源 2、下载阿里云的CentOS-Base.repo 到/etc/yum.repos.d/ 3、添加阿里云公共DNS 为了防止不能寻找yun源地址,生成cache,先添加阿里云的DNS 4、清理缓存

8分钟了解Kubernetes

8分钟了解Kubernetes

1个月前 (03-08)

Kubernetes脱胎于Google的Borg系统,是一个功能强大的容器编排系统。Kubernetes及其整个生态系统(工具、模块、插件等)均使用Go语言编写,从而构成一套面向API、可高速运行的程序集合,这些程序文档精良、易于参与贡献或在其上构建应用程序。 每个开发、运维或感兴趣的读者都应熟悉它的一些核心概念,以便理解这个系统及其不同的功能,以及为什么几乎所有人都在使用它。 在继续之前,我想提

容器常用操作 – 每天5分钟玩转 Docker 容器技术(25)

容器常用操作 – 每天5分钟玩转 Docker 容器技术(25)

2个月前 (03-06)

前面讨论了如何运行容器,本节学习容器的其他常用操作。 stop/start/restart 容器 通过 docker stop 可以停止运行的容器。 容器在 docker host 中实际上是一个进程,docker stop 命令本质上是向该进程发送一个 SIGTERM 信号。如果想快速停止容器,可使用 docker kill 命令,其作用是向容器进程发送 SIGKILL 信号。 对于处于停止状态

运行容器的最佳实践 – 每天5分钟玩转 Docker 容器技术(24)

运行容器的最佳实践 – 每天5分钟玩转 Docker 容器技术(24)

2个月前 (03-05)

按用途容器大致可分为两类:服务类容器和工具类的容器。 1、服务类容器以 daemon 的形式运行,对外提供服务。比如 web server,数据库等。通过 -d 以后台方式启动这类容器是非常合适的。如果要排查问题,可以通过 exec -it 进入容器。 2、工具类容器通常给能我们提供一个临时的工作环境,通常以 run -it 方式运行,比如: 运行 busybox,run -it 的作用是在容器启

切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

切换登录

注册

扫一扫二维码分享