docker入门

2019-11-19  本文已影响0人  只会写一点点代码
docker
目前公司的项目部署模式提倡容器化,docker这个字眼常常出现,这篇记录一下对docker的一个认识,学习一个新技术最重要的是先了解是什么?
这里贴出docker官方文档简介
以下的内容也是按照文档介绍。

一、docker是什么?

docker是一个集应用程序开发,发布,运行的开源平台,docker可以允许你将你的物理机器和应用程序分割开来以致于你可以快速的发布你的软件,使用docker,你可以像管理你的物理机一样管理你的应用程序,利用docker快速交付,测试和部署代码,能大大较少编写代码和部署到生产环境之间的延迟。

二、docker平台。

docker提供了在一个隔离和松散环境下(这个环境被称为容器)打包,运行应用程序的能力。容器的隔离性和安全性允许你在一台物理机上运行多个容器,容器是轻量级的因为它们不需要管理程序的额外的加载,直接在主机的内核中运行,这意味与传统的虚拟机相比,你可以运行更多的容器在硬件组合上,甚至你可以在本身已为虚拟机的机器上运行docker容器。

三、docker Engine

docker引擎是一个cs应用,就是我们常见的客户端服务器模式,有三个重要的组件;

四、what can we use for docker?

五、docker的架构。

docker的架构图
docker守护进程监听着来自于docker api的所有请求,并管理着docker对象,一个docker守护
进程还可以和其他的守护进程进行通信。

2、docker client

docker客户端是docker使用者主要的和docker守护进程交互的方式,我们可以使用docker命令
利用客户端发送给服务端进行通讯,docker客户端还可以和多个守护进程通信。

3、docker registries(docker仓库)

docker仓库存储这docker镜像,Docker Hub是一个公用的仓库任何人都可以使用(这里我们可
以理解为maven的中央仓库和私服的关系,docker的默认配置是去中央仓库搜索镜像,如上面
所说,你也可以搭建你自己私有的docker仓库。

4、docker object

docker镜像是一个包含创建docker容器指令的一个只读的模版,一个镜像基于其他的镜像
附加一些额外的定制化,举个例子,你可能创建一个镜像基于ubuntu,并且还想安装一个
apache的web服务,并且一些配置文件来运行你的项目。
在其他情况下我们可能需要一些定制话很强的镜像来运行我们自己的业务项目,我们可以使用
Dockerfile(下一篇介绍),我们可以理解为一个脚本文件,docker会按照我们事先规定的步
骤打造我们自己的镜像,镜像会以层级(layer)来打造,可以理解为拼积木,只有需要变化的层
会改变。

docker container

简单暴力的说法就是把docker镜像运行起来就是docker容器。我们可以初始化,运行,停止
或者删除一个容器利用docker提供的api,我们也可以让容器关联网络,连接存储,中间件等
甚至在这个基础上在创建一个镜像,所以我觉得理解为堆积木很恰当。
默认情况下容器和容器之间和物理机器之间的隔离度是很高的,但是我们也可以调整。
容器的一些配置是根据在创建镜像和启动时的一些参数配置的,在删除时其实也就无状态了。
这给我们一个很方便和耦合度很低的开发测试环境。

五、总结
这一篇文章介绍了docker是什么,一次记录一下加深自己的理解。

上一篇下一篇

猜你喜欢

热点阅读