为了账号安全,请及时绑定邮箱和手机立即绑定

Docker架构

标签:
Docker 架构

Docker架构

为了更好的使用Docker和理解Docker中一些不常见的行为,我们最好了解在Docker表层之下的一些东西。


在下面的图片中,我们可以看到Docker安装的主要元件

  1. 中间部分是Docker daemon,负责创建,运行和监控容器,同时构建和存储镜像,Docker daemon通过docker daemon命令来运行,通常由宿主机管理。

  2. Docker client位于右手边,用于和Docker daemon通过HTTP通信,默认情况下这主要是通过Unix domain socket通信,但是也可以使用TCP socket来让远端客户作为系统管理socket。因为所以的事情都可以通过HTTP来完成,也很容易让远端用户连接和使用开发语言来绑定,但是这也有一些实现上的指示。用于和daemon交流的API已经良好的定义和写好了文档,开发者可以直接写程序来与daemon交互而无需使用Docker client。最后,Docker client和daemon在同一个二进制里面分发。

  3. Docker registries存储和分发镜像。默认的registry是Docker Hub,托管了成千上万的镜像。许多组织运行他们自己的registry可以用户存储金融的或敏感的镜像,或者避免了网络拥挤。 以后我们可以试着运行自己的registry。 Docker daemon会回复docker pull的请求从registry下载镜像。它也会通过docker run请求和Dockerfile中的FROM指令自动下载镜像的,前提是本地没有镜像。

Docker architect.png

底层的技术

Docker daemon使用"execution driver"来创建容器,默认,这是Docker自己的runc驱动,但是也有合法的支持LXC的去掉。Runc与下面的kernel特性联系紧密

  1. cgroups:负责管理被容器使用的资源(例如,CPU和内存使用情况)。他们也可以负责冻结和解冻容器,被用于docker pause功能。

  2. namespace负责隔离容器,确保容器的文件系统,主机名,网络和进程和剩余的系统隔离开来。

  3. UFS用于存储容器的层(layers)。UFS提供一个或多个的存储驱动,例AUFS,devicemapper,BTRFS或者Overlay。


相关的技术

Docker引擎和Docker Hub没有组成一个完成的容器解决方案。许多用户会发现他们需要服务和软件,例如集群管理,服务发现工具和更的高网络性能。Docker Inc计划构建一个完全的开箱即用(out-of-the-box)的方案。也就是可替换电池战略,主要涉及到API的层次,允许元件连接Docker Engine,并且支持Docker 技术打包为一个独立的二进制,来很容易的替换第三方的等价元件。


下面包含了一些Docker支持的技术

Swarm ,Docker集群解决方案。Swarm可以为几个容器分组,允许用户把他们当做统一的资源来用

Compose 是一个工具用来构建和运行由多个Docker容器组成的应用。主要用于开发和测试而不是成产环境

Machine 安装和配置Docker主机在本地或远程资源

Kitematic 用于管理Docker 的MAC OS和windos GUI

Docker Trusted Registry 目前没开源的产品


已经有大量的第三方服务和应用和Docker相处的很好,几个解决方案也已经在下面的领域合并了


Networking   Weave 和 Project Calico

Service discovery Consul, Registrator, SkyDNS, 和 etcd.

Orchestration and cluster management

Kubernetes from Google, Marathon (a frame‐ work for Mesos), CoreOS’s Fleet, and Docker’s own Swarm tooling.


当然还有其他各种各样的插件了。


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消