Docker
Docker可以帮助软件带环境安装,也就是说在安装的时候,把原始环境一模一样地复制过来。
Docker是基于Go语言实现的云开源项目
定义:解决了运行环境和配置问题软件容器,方便做持续集成并有助于整体发布的容器虚拟化技术
Docker镜像的设计,使得Docker得以打破过去【程序即应用】的观念,透过镜像(images)将作业系统核心除外,运作应用程序所需要的系统环境,由上而下打包,达到应用程序跨平台间的无缝接轨运作。
Docker理念
主要目标"Bulid,Ship and Run Any App,Anywhere",也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的APP(可以是一个web应用或数据库应用等等)及其运行环境能够做到”一次封装,到处运行。
Linux容器技术的出现就解决了这样一个问题,而Docker就是在它的基础上发展过来的。将应用运行在Docker容器上面,而Docker容器在任何操作系统上都是一致的,这就实现了跨平台、跨服务器。只需要一次配置好环境,换到别的机子上就可以一键部署好,大大简化了操作。
Docker 是内核级虚拟化,其不像传统的虚拟化技术一样需要额外的Hypervisor支持,所以在一台物理机上可以运行很多个容器实例,可大大提升物理服务器的CPU和内存的利用率。
Dcoker的优势
- 轻量,秒级的快速启动速度
- 简单、易用、活跃的社区
- 标准统一的打包、部署、运行方案
- 镜像支持增量分发,易于部署
- 易于构建,良好的REST API,也很适合自动化测试和持续集成
- 性能,尤其是内存和IO的开销
Docker下载地址
- 英文官网:http://www.docker.com
- 中文网站:http://www.docker-cn.com
Docker的基本组成
面试官会问到的