Docker基础
Snake8859 11/27/2022
docker官网:https://www.docker.com/
docker官方文档:https://docs.docker.com/
# Docker三要素
docker的三要素分别是镜像(Image),容器(Container)和仓库(Repository)。
- 镜像(Image):docker镜像是用于创建docker容器的模板。
- 容器(Container):docker容器是基于镜像创建一个或者一组的应用。
- 仓库(Repository):docker仓库是用于保存镜像
容器和镜像的关系类似于面向对象中的对象和类。仓库则是管理和控制中心,类似于Maven(Jar包管理)或者Git(Git文件管理)。
Docker | 面向对象 |
---|---|
容器 | 对象 |
镜像 | 类 |
# Docker架构
Docker使用是客户端-服务器(C/S)架构模式,使用远程API(命令行)来管理和创建Docker容器。
概念 | 说明 |
---|---|
Docker 镜像(Images) | Docker 镜像是用于创建 Docker 容器的模板,比如 Ubuntu 系统。 |
Docker 容器(Container) | 容器是独立运行的一个或一组应用,是镜像运行时的实体。 |
Docker客户端(Client) | Docker客户端通过命令行或者其他工具使用 Docker SDK (https://docs.docker.com/develop/sdk/) 与 Docker 的守护进程通信。 |
Docker 主机(Host) | 一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。 |
Docker Registry | Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。Docker Hub(https://hub.docker.com (opens new window)) 提供了庞大的镜像集合供使用。一个 Docker Registry 中可以包含多个仓库(Repository);每个仓库可以包含多个标签(Tag);每个标签对应一个镜像。通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应该软件的各个版本。我们可以通过 <仓库名>:<标签> 的格式来指定具体是这个软件哪个版本的镜像。如果不给出标签,将以 latest 作为默认标签。 |
Docker Machine | Docker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。 |