1.概览

Docker是一个开发、交付和运行应用的一个平台。Docker让你的应用从不再受到基础设施的牵制,你可以在任何一台服务器(没有需要的基础设施)上快速部署你的服务。其实现的方式就是将基础设施(redis、tomcat)连同应用一起打包、管理。总之,Docker让你发布一个应用变得简单。

2.Docker引擎

Docker引擎是一个CS架构的应用。其主要包含三个部分:docker守护进程、REST API 、CLI

image.png
我们使用docker命令就是在使用最外层的的部分(CLI)。

3.Docker的作用

3.1快速、持续发布你的应用

没有Docker前,你要发布一个应用在不同服务器(本地、测试服务器、生产服务器)
①本地,安装jdk,安装mysql,安装redis,运行代码。。
②测试环境,安装jdk 、安装mysql,安装redis,运行代码
③生产环境,安装jdk、安装mysql,安装redis ,运行代码
④再来一个新的服务器,安装jdk、安装mysql、安装redis,运行代码
有Docker后
①本地,安装jdk、安装mysql,安装redis,运行代码。打包成镜像
②测试环境,拉取镜像,运行容器
③生产环境、或再来一个新服务器都是这样,拉取镜像,运行容器。
注:可能不是很准确。

3.2响应式的部署和扩展

Docker可以运行在任何机器上,因此想要扩展某些服务,多部署几个同样服务,是非常容易的。

3.3可以运行更多的服务

在同一个机器不是用Doker只能运行2个。
使用Docker后可以影响3个或4个。

4.Docker的架构

Docker使用的是CS架构,Docker客户端通过命令行操作docker服务进程进行容器的构建、运行和发布工作。
image.png

Client:就是我们使用的命令行
Docker daemon:安装Docker时会安装Client和DockerDaemon,Client用于接收发送命令,Docker daemon就是命令的执行者,管理本地的镜像和容器
Docker registry:Docker仓库,存放镜像的地方,相当于GitHub。