Docker学习笔记(1):Docker简介及其组件介绍
2017-03-29 00:03
447 查看
前言
本系列文章为《Docker进阶与实战》读书笔记,记录了一些书摘、一些我个人的想法以及在实践的过程中踩过的坑。Docker简介
Docker是一个开源的容器引擎,可以方便的对容器进行管理。它可以统一开发、测试、部署的环境和流程。
Github地址:github.com/docker/docker
Docker结构图:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/04/6c5f00fd23716583e7972f67873c877d.png)
图片来源
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的安装及一些基本的使用说明。相关文章推荐
- 云计算学习笔记---Hadoop简介,hadoop实现原理,NoSQL介绍...与传统关系型数据库对应关系,云计算面临的挑战
- angularjs学习笔记1-angular总体简介及其特点
- docker学习笔记18:Dockerfile 指令 VOLUME 介绍
- Docker学习笔记 - Docker的简介
- Docker学习笔记一 简介
- 云计算学习笔记---Hadoop简介,hadoop实现原理,NoSQL介绍...与传统关系型数据库对应关系,云计算面临的挑战
- docker学习笔记12:Dockerfile 指令 ENTRYPOINT介绍
- nginx学习笔记之一:nginx介绍及其编译安装
- docker学习笔记15:Dockerfile 指令 USER介绍
- 分享bootstrap学习笔记心得(组件及其属性)
- Sencha Touch 2 学习笔记(三)----Form表单容器及其子组件
- docker 学习笔记 简介
- React学习笔记(6)---组件协同使用介绍
- docker学习笔记1-docker简介
- 云计算学习笔记003---Hadoop简介,hadoop实现原理,NoSQL介绍...与传统关系型数据库对应关系,云计算面临的挑战
- [Docker]学习笔记--简单介绍
- Flume-1.6.0学习笔记(三)组件介绍
- LVS学习笔记之LVS简介以及DR原理介绍
- Docker学习笔记(一)docker介绍及相关概念
- reactjs学习笔记2--组件的介绍