
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
面向开发者的容器和编排
可移植性的一个关键因素是容器。容器代表了一小部分包含应用在内的主机系统资源。容器的起源可以追溯到早期Linux时代引入的chroots,它们随着谷歌的进程容器(process container)成了主流,最终演变成了cgroups。容器的使用在2013年开始爆发,这主要归功于Docker,它让很多开发人员能够便利地使用它。Docker公司、Docker容器、Docker镜像和我们所习惯使用的Docker开发者工具之间是有区别的。虽然最初的一切都始于Docker,但是Kubernetes更倾向于通过支持其容器运行时接口(Container Runtime Interface,CRI)的任意容器运行时来运行容器,如containerd(网址见链接列表1.10条目)或C R I-O(网址见链接列表1.11条目)。很多人所说的D o c k e r镜像实际上是以开放容器计划(Open Container Initiative,OCI)格式(网址见链接列表1.12条目)打包的镜像。