其他分享
首页 > 其他分享> > 什么是容器化?

什么是容器化?

作者:互联网

什么是容器化?

Photo by 伊恩·泰勒 on 不飞溅

介绍

在软件开发领域,有许多不同的方式来部署应用程序。例如,您可以使用虚拟机 (VM) 或容器,将代码和依赖项打包到应用程序层的抽象中。容器抽象了在您的机器上运行操作系统和操作系统内核的所有复杂性,因此只有您的应用程序在性能、可扩展性、安全风险和与在每个应用程序环境中管理多个虚拟机/容器相关的开销成本方面很重要;从而使跨团队甚至跨环境(开发、测试和生产)工作的开发人员更容易。

容器是应用层的抽象,它将代码和依赖项打包在一起。

容器是应用层的抽象,它将代码和依赖项打包在一起。容器是一种轻量级、快速和现代的方式,通过将应用程序封装在一个独立的环境中来运行它们。

重要的是要了解容器不仅包含您的代码——它们还提供在其上运行的多个进程之间的隔离;这意味着您可以在同一主机上同时运行多个应用程序,而不会相互干扰或影响整个系统。

多个容器可以在同一台机器上运行,并与其他容器共享操作系统内核,每个容器在用户空间中作为独立进程运行。

容器是隔离的,因此您可以在一台机器上运行多个容器。每个容器在不访问其他资源(如文件系统或网络接口)的情况下获取其内核。

操作系统内核在池中的所有容器之间共享。

与 VM 相比,容器占用的空间更少(容器映像的大小通常为数十 MB)并且几乎可以立即启动。

容器最明显的好处是它们占用的空间比 VM 少(容器映像的大小通常为数十 MB)。这很重要,因为如果您运行的是 Windows 或 Linux,并且需要存储您的 VM 文件,您可能会发现自己有数百 GB 的数据占用了宝贵的服务器机房空间。容器没有这个问题,因为它们只是没有现有操作系统的镜像;只要您的主机操作系统支持 Docker,您就可以运行任何您想要的东西。

容器的另一个优点是它们的启动速度:对于大多数现代服务器来说,不到一分钟!这使得它们可以非常高效地快速部署应用程序,而无需等待数小时才能看到那些以总容量(或关闭)运行的机器的任何结果。这也意味着如果应用程序本身出现问题——例如,如果在部署过程中出现错误——你会相对快速地知道哪里出了问题,而不必等到明天早上每个人都从午休时间回来才发现事情是怎么出错的。”

容器化如何运作?

容器是一种轻便的便携式单元,可以在环境之间轻松移动。容器与主机以及彼此隔离。这使得一次创建和管理多个容器变得容易,每个容器可以运行不同版本的服务(例如,数据库)。

容器还使您能够在组织中的团队之间共享工作负载——这意味着您不必担心每个团队都有自己的应用程序或数据库实例!您可以只使用一个命令行工具(例如 Docker)部署容器,这意味着它们将在几秒钟内启动并运行,无需任何配置。

让我们退后一步,考虑一下应用程序环境在开发、测试、登台和生产之间有何不同。

在应用程序开发的上下文中,存在三种环境:开发、测试和生产。开发是您编写代码的地方。测试是您运行自动化测试的地方,以确保您的代码在真实环境(如登台或生产)中按预期工作。最后,生产是您的代码实际运行的地方!

这是一个重要的区别,因为它使我们能够更好地理解容器在这些环境中的工作方式。

考虑到这一点,很明显您的应用程序需要跨环境移植;也就是说,它应该在任何地方都运行相同。

容器是可以快速启动和关闭的轻量级虚拟机。容器旨在相互隔离地运行应用程序,使它们能够在任何操作系统和硬件上运行。

使用容器有几个原因:

由于应用程序的不同部分可能由不同的团队开发,因此您还需要一种分发应用程序的方法,而不必同时分发整个基础架构堆栈。理想情况下,这将允许我们以这样一种方式“打包”我们的应用程序,以便我们可以将它从一个环境无缝地传送到另一个环境。这就是容器的作用!

容器是一种将应用程序及其依赖项打包在一起的方式,使得它们可以在任何系统上运行,而无需整个基础架构堆栈。由于应用程序的不同部分可能由不同的团队开发,因此您还需要一种分发应用程序的方法,而不必同时分发整个基础架构堆栈。理想情况下,这将允许我们以这样一种方式“打包”我们的应用程序,以便我们可以将它从一个环境无缝地传送到另一个环境。这就是容器的作用!

由于容器在 Linux 之上运行,因此它们比虚拟机 (VM) 更轻量级。事实上,您可能会发现在尝试构建大规模微服务架构时使用虚拟机并不实用,因为它们需要额外的资源,例如内存和 CPU 能力,这通常会导致比直接在操作系统中从头开始运行容器而不是直接运行容器更高的成本。在根本不需要这些额外资源的虚拟机中运行它们。

结论

我希望您发现这篇文章有趣且内容丰富。您可能想知道容器是否适合您的组织,但我鼓励您在开始这条道路之前不要等待太久。如果您仍然对它们是否会使您的公司受益持观望态度,这里有一些建议:

不要等到为时已晚——现在就开始吧!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/27292/12151110

标签:容器,操作系统,它们,虚拟机,应用程序,什么,运行
来源: https://www.cnblogs.com/amboke/p/16683607.html