# Docker介绍
# Docker简介
Docker 是一个开源的容器引擎,基于Go语言 并遵从 Apache2.0 协议开源。它有助于更快的交付应用。Docker可以将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理。使用Docker,可以更快的打包、测试以及部署应用程序,并可缩短从编写到部署运行代码的周期。
Docker官网:
https://www.docker.com/
Docker项目:https://github.com/docker
# Docker版本
目前,Docker的最新版本是17.11,最新的稳定版是17.09。进入Docker17时代后,Docke可分为两种版本:Docker EE(企业版)和Docker CE(社区版)。
# 版本区别
# Docker EE(企业版)
Docker EE由公司提供支持,可在经过认证的操作系统和云提供面中使用,并可运行来自Docker Store的、经过认证的容器和插件
Docker EE 提供三个服务层次,如下表所示。
服务层级 | 功能 |
---|---|
Basic | 包含用于认证基础设施的Docker平台 Docker公司的支持 经过认证的、来自Docker Store的容器与插件 |
Standard | 高级镜像与容器管理 LDAP/AD用户集成 基于角色的访问控制(Docker Datacenter) |
Advanced | Docker安全扫描 连续漏洞监控 |
# Docker CE(社区版)
Docker CE是免费的Docker产品的名称,Docker CE包含了完整的Docker平台,非常适合开发人员和运维团队构建容器APP。可前往Docker的RELEASE log查看详情(https//github.com/moby/moby/releaes)。
Docker公司认为,Docker CE和EE版本的推出为Docker的生命周期、可维护性以及可升级性带来了巨大的改进。
# Docker 迭代计划
Docker从17.03开始,转向基于时间的YY.4形式的版本控制方案,类似Canonical公司为Ubunta所制定的版本控制方案。Docker CE有两种版本,如下所示:
- edge:edge版本每月发布一次,主要面向喜欢尝试新功能的用户。
- stable(稳定版):stable版本每季度发布一次,适用于生产。
edge版本只在发布的当前月获得安全和错误修复。而stable版本可在发布后4个月内接收关键错误修复和安全问题的修补程序。如此,Docker CE用户就有一个月的窗口期来切换到更新的版本。举个例子,Docker CE 17.03会维护到2017年的7月;而Docker CE17.03的下一个稳定版本是CE17.06,这样,在6月到7月这个时间窗口,用户就可以升级。Docker EE和stable版本的版本号保持一致,每个Docker EE版本都享受为期一年的支持与维护期,在此期间接受安全与关键修正。
# Docker架构
Docker架构如官方文档中给出的下图所示,其中:
- Docker daemon (Docker守护进程):Docker daemon是一个运行在宿主机(DOCKER HOST)的后台进程。可通过Docker客户端与之通信。
- Client (Docker客户端):Docker客户端是Docker的用户界面,它可以接受用户命令和配置标识,并与Docker daemon通信。图中,docker buld等都是Docker的相关命令。
- Images (Docker镜像):Docker镜像是一个只读模板,它包含创建 Docker容器的说明。它和系统安装光盘有点像——使用系统安装光盘可以安装系统,同理,使用Docker镜像可以运行Docker镜像中的程序。
- Container(容器):容器是镜像的可运行实例。镜像和容器的关系有点类似于面向对象中,类和对象的关系。可通过Docker API或者CLI命令来启停、移动、删除容器。
- Registry(注册中心):Docker Registry是一个集中存储与分发镜像的服务。构建完Docker镜像后,就可在当前宿主机上运行。但如果想要在其他机器上运行这个镜像,就需要手动复制。此时可借助Docker Registry来避免镜像的手动复制。最常用的Docker Registry莫过于官方的Docker Hub了,上面有非常多的好的Docker Image。
Docker安装 →