Docker是一个开源的应用容器引擎,可以让开发者将应用和依赖打包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器完全使用沙箱机制,相互之间不会有任何接口。从开发者角度来看,他们需要的是一个可以高效交付和稳定运行的环境,而不是一个独立的操作系统。相比于KVM、Xen等硬件虚拟化技术方案,容器技术是更轻量级的操作系统虚拟化方案。
本章将从虚拟化技术开始,逐一讲解操作系统虚拟化、容器、Docker等的概念与原理,并对Docker镜像管理及常用的网络模式进行详细介绍。通过本章的学习,读者可以了解Docker运维常用的命令与Dockerfile的编写方法,包括从零开始安装Docker服务并运行一个Nginx容器,手动编写一个可构建Redis的Dockerfile文件。下面,让我们从容器技术开始,一步步进入云原生时代。