Container是软件开发中很流行的一个术语,但是这个概念看起来非常抽象,不做软件开发的人对所谓的container也根本没概念。那究竟什么是container呢?我们尝试用几句话(大白话)简单给大家做个介绍,以使非开发人员也能更容易地理解这个术语。
在英文中,container这个词的本意是:容器,也就是说,它可以容纳、装下其他物体。软件语境中的container(也叫software container,container technology),指的是一类特别的软件/技术,它可以对应用程序(application)实现虚拟的打包,隔离,以便于在不同的环境中轻松部署。
采用container(容器)技术的好处包括:
- 通过虚拟的隔离,容器可以在不同操作系统环境(比如:Windows、Linux等)中实现相同的运行效果。
- 提供增强的安全性。由于容器可以实现与操作系统的隔离,因此它的安装、运行都相对独立于操作系统,即便容器崩溃,也不会对操作系统造成负面影响。
容器的效果与虚拟机(VM)有一些类似,但其机制又并不相同,容器自身并不带一个虚拟的操作系统。
参考链接:
https://www.techradar.com/news/what-is-container-technology
https://techterms.com/definition/container
https://www.cio.com/article/2924995/what-are-containers-and-why-do-you-need-them.html