NGINX.COM

容器是一种虚拟化技术,旨在为应用创造可移植性并支持这种可移植—— 换句话说,是为了在各种不同的平台上都能轻松地部署应用。容器可以将应用的所有需求(应用代码本身、应用的依赖项(比如需要运行的库等),以及应用及其依赖项的运行时环境)打包到一个可跨平台传输和独立运行的包中。容器是一个应用从其典型的操作系统运行时环境中的抽象(abstraction)。

Docker 是最有名的容器实现格式;此外,还有其他容器技术(例如 rkt/CoreOS、containerd、Hyper – V 容器)以及较低级别的技术(例如 cgroups 和 namespaces,这两种技术都用于应用隔离,类似于容器引擎,但不像容器那样提供隔离的可移植性)。您可以使用 Docker 或 rkt 等平台工具直接管理容器,但大多数部署都使用编排工具(如 Kubernetes)管理容器。Kubernetes 已逐渐成为了默认的生产级容器部署的标准工具。

容器已成为一种备受欢迎的架构选择,因为它能够将应用分解为小型独立组件,使基础架构管理人员和开发人员可以各司其职。这在开发过程中好处多多,因为这意味着不同的团队可以并行开发各种不同组件,而且在部署过程中也大有裨益,因为它可实现平台之间给定容器的可移植性。容器还为应用和基础架构管理人员提供了一套更精简的工具,因为容器提供了不可变的平台,让开发人员可以按一组已知要求来发布应用容器,并且他们无需自行管理这些需求。

术语“应用容器化”通常用于表示将应用从标准的 Linux 运行时环境迁移到可在许多环境中运行的自包含容器的过程。许多企业已经步入了容器化之旅,并已开始使用 Kubernetes 等工具迁移到基本的容器中,或有了更全面的容器管理策略。

 

NGINX 如何助一臂之力?

所有 NGINX 产品 —— 包括 NGINX 开源版NGINX Plus(可选配 NGINX App Protect)、NGINX UnitNGINX Service MeshNGINX Ingress Controller 均可在容器中运行,或者基于容器技术(NGINX Controller)而构建。

立即联系我们,了解我们可如何帮助您交付现代应用