docker系列1-简介

Posted zh-ch

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker系列1-简介相关的知识,希望对你有一定的参考价值。

简介

docker是一种容器技术,docker可以将应用程序和基础设施层隔离,并且可以将基础设施当做程序一样进行管理。传统的部署项目方法是在一台服务器上准备好linux基础环境、配置jdk、准备项目包、设置好相关配置,需要扩展的话就得重新在另一台服务器上执行重复步骤。使用docker的话就可以将linux、jdk等这种基础环境甚至需要部署的项目本身抽离成一个整体(image)。需要部署时利用image创建一个实例(Container)即可。类似java文件和java对象的关系。

三种部署方式对比

技术图片      

图1:应用部署在物理机上,成本高、部署慢、浪费资源、硬件限制、不利于迁移扩展

技术图片

图2:利用虚拟机部署

优点:相对容易扩展
缺点:虚拟机占用过多资源,可能虚拟机占用的资源远大于应用程序需要的资源

技术图片

图3:利用docker容器部署

应用通用的基础环境都抽离到了docker层中,资源利用更充分。例如部署新的应用就不用再重复配置类似jdk这种基础服务了

Docker架构

 技术图片

1、Docker daemon
监听docker api请求并管理docker对象,还可以与其他守护进程通信以管理docker服务。是一个运行在宿主主机的后台进程

2、Client(Docker客户端)
用户交互端,比如图中执行docker run 就会与docker daemon通信

3、Registry
可以理解为类似maven仓库的存在,用来存放各种docker image。比如Docker Hub公共仓库,国内阿里云的regs(容器镜像服务),或者自己利用harbor搭建私有仓库

4、Images(Docker镜像)
Docker镜像是一个只读模板,它包含创建Docker容器的说明。类似于运行程序的模板文件,image可以类比为java文件,new出来的对象类比为Container。
5、Container(容器)
容器是镜像的可运行实例。镜像和容器的关系有点类似于面向对象中,类和对象的关系。我们可通过Docker API或者CLI命令来启停、移动、删除容器。

 

以上是关于docker系列1-简介的主要内容,如果未能解决你的问题,请参考以下文章

Docker学习系列Docker简介

Flux7 Docker 系列教程:Docker 简介

Docker深入浅出系列教程——Docker简介

Docker系列:第一讲.Docker简介与安装

容器与Docker简介Docker相关术语——微软微服务电子书翻译系列

Docker重学系列之Docker Compose