docker的核心概念。
概念 | 说明 |
---|---|
Dockerfile | 一段文本,Docker读取其中的指令以便自动化的构建Docker镜像。你可以在Dockerfile中声明任何命令 |
Docker Compose | 一个工具,用来定义多容器(Multi-container)的Docker应用程序。你可以编写Composefile,来配置你的应用程序所依赖的服务,并通过单个命令来启动所有这些服务 |
Docker Engine | Docker的核心组件,它负责创建Docker镜像、运行Docker容器 从1.12版本开始,Docker引擎支持Swarm mode 包括三个组件: 1. Docker守护程序,即dockerd 2. REST风格的接口,dockerd暴露的API 3. Docker命令行,通过REST API和dockerd通信,对其进行控制 |
Docker Image | Docker镜像是一个文件系统 + 参数集,供Docker运行容器时使用。镜像本身不包含状态 任何人可以通过Docker镜像的方式来创建、分享软件 首次使用镜像时,会从仓库下载,之后,除非镜像的源码改变,不会再次下载 |
Layer | 层,或者叫镜像层(Image layer),是指对镜像的一个变更,或者指一个中间镜像(intermediate image)。之所以叫层,和UFS(联合文件系统)有关,UFS允许:其包含的文件和目录可以分布在多个其它文件系统中,这些文件/目录(称为Branches)可以被叠加(overlay)形成单个新的文件系统 在Dockerfile中指定的指令,例如FROM/RUN/COPY,会导致先前的镜像发生变化,因而导致创建新的层 层有利于缩短构建的时间,Dockerfile发生变化后,变化之前的中间镜像不需要重新构建,可以作为缓存使用 |
Docker Container | Docker容器是Docker镜像的运行时实例 容器的行为取决于镜像如何被配置,可能是简单的执行一条命令,也可能是启动数据库这样的复杂服务 |
Docker Hub | 一种服务,用于构建、管理镜像。其角色类似于Maven仓库或者PyPI 在Docker Hub上你可以很轻松下载到大量已经容器化的应用镜像,即拉即用。这些镜像中,有些是Docker官方维护的,更多的是众多开发者自发上传分享的 你可以将Github账号绑定到Docker Hub账号,并配置自动生成镜像的功能。这样,当Github中代码更新时,Docker镜像会自动更新 |
Docker Trusted Registry | DTR,企业级的Docker镜像存储方案,其角色类似于Docker Hub的私服 |
Docker Cloud | 一种服务,能够构建、测试、部署镜像到你的主机上 |
Docker Universal Control Plane | UCP,管理Docker宿主机的集群,让它们整体上表现的像是单台机器 |
Docker Machine | 一个工具,使用它你可以: 1. 在Windows或者Mac平台上安装、运行Docker 2. 基于命令docker-machine准备、管理多台Docker宿主机。管理行为包括:启动/停止/重启宿主机、升级Docker客户端和Daemon、配置Docker客户端,等等 3. 准备Swarm集群 当前,只有通过Docker Machine,你才能在Mac或者Windows上运行Docker。同时它也是管理大量基于各种Linux变体的宿主机的便捷方法 |
libcontainer | 封装了名字空间、控制组、UnionFS的库,提供容器运行时基础功能 |
评论区