您的位置:首页 > 运维架构 > Docker

Docker学习笔记(1):Docker简介及其组件介绍

2017-03-29 00:03 447 查看

前言

  本系列文章为《Docker进阶与实战》读书笔记,记录了一些书摘、一些我个人的想法以及在实践的过程中踩过的坑。

Docker简介

  Docker是一个开源的容器引擎,可以方便的对容器进行管理。

  它可以统一开发、测试、部署的环境和流程。

Github地址:github.com/docker/docker

  Docker结构图:

  



  图片来源

  Docker是基于容器技术的轻量级虚拟化,其虚拟化技术是基于内核的CGroup和Namespace技术,处理逻辑与内核深度融合,性能与物理机非常相近。

Docker的组件

Docker 客户端

Docker daemon

Docker 容器

Docker 镜像

Registry

Docker 客户端

  Docker采用C/S架构。对于Linux而言。其在发布时,客户端和服务端统一在同一个二进制文件中。而对于Mac而言,Docker只提供客户端。

  Docker 客户端通过Docker command发起请求,在其他应用程序的代码中也可以采用Docker 提供的RESTful API来发起请求。

Docker daemon

  Docker daemon 也可以被理解为Docker Server。其实现的功能就是接收客户端发来的请求,并实现请求所要求的功能,同时针对请求返回相应的结果。

Docker 容器

  容器是对镜像的完美诠释,容器以镜像为基础,又为镜像提供了一个标准的和隔离的执行环境。

  Docker的容器可以安装任意的软件和库文件,做任意的运行环境配置。开发及运维人员在转移和部署应用的时候,不用关心容器里装了什么软件,也不用了解它们是如何配置的。管理容器的Docker引擎同样不关心容器里的内容,只要让这个容器运行起来就OK了。

  Docker的诞生被称为“软件界的创新和革命”,是因为它会改变软件界的开发、部署形态,降低成本,提高效率。

Docker 镜像

  Docker镜像是运行环境的静态体现,是一个还没有运行起来的“运行环境”。Docker 镜像相对于传统的虚拟化技术的镜像更轻量,它是一个可定制的rootfs。Docker镜像的另一个创新:它是层级的、可复用的,可以极大减少磁盘和内存的开销。

  Docker 镜像通常通过Dockerfile来创建。

  还可以通过使用
docker commit
将修改后的内容生成新的镜像。

Registry(仓库)

  查了一些资料,并没有合适的翻译,按照它实现的功能我觉得叫仓库也是ok 的。

  Registry 是镜像的仓库,部署在互联网服务端或者云端。

  仓库在镜像的传输过程中起着重要的作用。举个栗子,我们在公司将某软件的运行环境制作成镜像,上传到云端的Registry中,可以很方便的在家里的笔记本上或者在客户的生产环境中直接从Registry上pull下来这个镜像并运行咯。

  Docker公司提供了官方的Registry叫Docker Hub。提供了大量的官方or第三方镜像供大家选择。

  当然也可以自己部署一个Registry实现一个私人仓库。

小结

  在下篇文章中将会介绍Docker的安装及一些基本的使用说明。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息