主要内容

本页采用了机器翻译。点击此处可查看英文原文。

什么是容器?

容器是一种隔离的软件单元,包含运行特定应用程序所需的一切内容,包括代码、库、依赖项、驱动程序和设置。容器具有以下优势:

  • 一致性:容器确保无论部署在何处,都能保持一致的行为。由于容器封装了运行应用程序所需的所有软件依赖项(包括特定版本的运行时环境和软件库),因此它们在任何环境中都能以相同的方式运行并产生相同的结果。因此,容器非常适合在多种环境中运行相同的应用程序。例如,您可以利用它们同时测试应用程序、运行多个仿真,或在不同环境中进行可重复的研究。

  • 可移植:您几乎可以在任何操作系统或平台上部署容器。容器可在 Linux®、Windows®Mac 操作系统上运行,您可将其部署在私有数据中心、公有云(如 AWS® 或 Microsoft® Azure®)或本地环境中。这意味着您可以轻松地与同事共享容器镜像,无需担心软件或平台依赖性问题。

  • 隔离、轻量并且高效:与虚拟机不同,容器共享宿主机操作系统的一部分(内核),且同一容器的多个实例共享公共资源。该特性使它们轻量高效,容器化应用程序可在数秒内启动。然而,容器彼此之间以及与宿主操作系统都是隔离的。也就是说,他们对共享资源仅具有只读权限,只能修改容器内部的文件。要扩展功能,您可以将额外的文件、文件夹和设备装载到容器中。

  • 虚拟化:容器对操作系统进行虚拟化,包括 CPU、GPU、内存和文件系统。因此,容器化应用程序认为自己能够访问常规操作系统。这意味着您可以使用与编程常规应用程序相同的逻辑来编程容器化应用程序。

MATLAB 与容器结合使用

  • 将 MATLAB® 容器化的主要目的是将其集成到完全容器化的持续集成与持续交付(CI/CD)管道中。MATLAB 已与多个 CI 平台实现集成,包括 CircleCI®、Jenkins® 和 Travis CI。有关详细信息,请参阅在 CI 平台上与 MATLAB 的持续集成 (MATLAB)

  • 容器技术还使您能够充分利用云计算资源。云平台已集成容器管理工作流。容器通常是将软件部署到您选择的云平台上最便捷的方式。

  • 如果贵组织的大多数应用程序和服务都使用容器,您也可以将容器中的 MATLAB 应用程序与现有业务应用程序集成。

要了解如何在容器中运行 MATLAB,请观看视频在 Docker 容器中运行 MATLAB。有关在容器中许可 MATLAB 的更多信息,请参阅 云平台上 MATLAB 的许可证要求

提示

要开始使用容器,您可以启动一个包含 MATLAB 及其运行所需的所有软件依赖项的容器。有关详细信息,请参阅Docker Hub 上的 MATLAB 容器

流量 MathWorks 容器选项

容器选项特征链接
Docker® Hub 上的 MATLAB 容器镜像
Docker Hub 上的 MATLAB 深度学习容器镜像
  • 包含您进行深度学习所需的 MATLAB 工具箱,以及若干预训练神经网络。

  • 大小:约 10 GB。

GitHub® 上的 MATLAB Dockerfile
  • 使用此 Dockerfile 自定义 Docker Hub 上的 MATLAB 容器镜像。例如,GitHub 存储库中的 README 文件提供了安装 MATLAB 工具箱的示例,该示例适用于容器镜像。

  • 不如 Docker Hub 上的预构建镜像方便,后者只需拉取即可运行。

网络许可证管理器容器
  • 允许您在 Docker 容器内安装并启动网络许可证管理器。

  • 允许您管理可供借用的许可证,以便您组织中的最终用户能够使用 MathWorks® 产品。

在容器中部署 MATLAB 应用程序
  • 使用 MATLAB Compiler SDK™ 将 MATLAB 应用程序打包到 Docker 容器中。

  • 由于生成的图像使用的是 MATLAB 运行时而非完整的 MATLAB,其体积远小于完全容器化的 MATLAB。

  • 要更改应用程序,您需要重新构建镜像。

有关 Docker Hub 上的 MATLAB 和 MATLAB 深度学习容器镜像的源文件,请参阅 Container Images GitHub 存储库。

另请参阅

主题