主要内容

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

MATLAB Runtime 容器

MATLAB® Runtime 是一组独立的共享库,可让您在 MATLAB 环境之外运行编译后的 MATLAB 代码。您可以使用 MATLAB Compiler™MATLAB Compiler SDK™ 创建编译后的应用程序和组件。要使用 MATLAB Runtime 容器,您需要一台已安装 Docker® 的计算机。

MathWorks® 容器注册表提供了 MATLAB Runtime 容器镜像,供您在开发环境中使用。MATLAB Runtime Docker 图片基于 Ubuntu® Linux®。您可以在 CI/CD 管道中使用容器,在 Docker 环境中运行 MATLAB 代码。

您可以将 MATLAB Runtime 容器直接部署到 Docker,也可以将该容器镜像作为独立 Docker 镜像(使用 compiler.package.docker)或微服务镜像(使用 compiler.package.microserviceDockerImage (MATLAB Compiler SDK))中的一个层。从 R2023b 版本开始,您可以创建自定义的 MATLAB Runtime 容器镜像,该镜像可通过 compiler.runtime.createDockerImage 运行多个应用程序。此选项允许您使用自定义基础层映像创建 MATLAB Runtime Docker 映像。

从 R2024b 版本开始,提供了两个预构建镜像:一个支持 GPU 的完整 MATLAB Runtime 镜像,和一个不含 GPU 库的镜像。

MATLAB Runtime 容器内容

一个 MATLAB Runtime 容器镜像包含:

同意许可协议并设置库路径

若要直接使用 MATLAB Runtime 容器,您必须通过将容器环境变量 AGREE_TO_MATLAB_RUNTIME_LICENSE 设置为 "yes" 来接受 MATLAB Runtime 许可协议。您可以通过在 Dockerfile 中设置环境变量,或在部署容器时通过 docker run 命令来实现这一点。

例如,同意针对 MATLAB Runtime R2026a 容器的 docker run 命令中的许可协议。

docker run --rm -e "DISPLAY=:0" -v /tmp/.X11-unix:/tmp/.X11-unix \
-e "AGREE_TO_MATLAB_RUNTIME_LICENSE=yes" \
containers.mathworks.com/matlab-runtime:r2026a

在 R2026a 之前,您必须在 MATLAB Runtime 容器中设置库路径环境变量 LD_LIBRARY_PATH,使其指向运行时库。

例如,若要接受许可协议并为 MATLAB Runtime R2025b 设置库路径,请在部署前将以下几行添加到 Dockerfile 中。

ENV AGREE_TO_MATLAB_RUNTIME_LICENSE="yes"

ENV LD_LIBRARY_PATH="/opt/matlabruntime/R2025b/runtime/glnxa64:\
/opt/matlabruntime/R2025b/bin/glnxa64:\
/opt/matlabruntime/R2025b/sys/os/glnxa64:\
/opt/matlabruntime/R2025b/sys/opengl/lib/glnxa64:\
/opt/matlabruntime/R2025b/extern/bin/glnxa64"

下载完整的 MATLAB Runtime 镜像

从 R2024b 开始,要下载包含 GPU 库的完整 MATLAB Runtime 容器镜像,请在系统终端中执行以下命令:

docker pull containers.mathworks.com/matlab-runtime:<releaseName>-full

术语 releaseName 指的是 MATLAB 版本的特定版本。它的表示形式是小写 r 后跟版本的年份和版次。例如,如果您想要一个用于 2023 年版第二版的 MATLAB Runtime 容器,则应将 <releaseName> 指定为 r2023b

该 URL 带有后缀 -full,以将其与不支持 GPU 的镜像区分开来。

在 R2024b 之前的版本中,唯一可用的镜像是包含 GPU 库的完整 MATLAB Runtime 容器镜像。要下载完整的 MATLAB Runtime 容器镜像,请在系统终端中执行以下命令:

docker pull containers.mathworks.com/matlab-runtime:<releaseName>

下载不含 GPU 库的 MATLAB Runtime

自 R2024b 起

从 R2024b 版本开始,容器注册表除了提供包含 GPU 库的完整 MATLAB Runtime 容器镜像外,还提供了一个不包含 GPU 库的更小巧的 MATLAB Runtime 容器镜像。要下载一个包含任何 GPU 库的 MATLAB Runtime 容器镜像,请在系统终端中执行以下命令:

docker pull containers.mathworks.com/matlab-runtime:<releaseName>
术语 releaseName 指的是 MATLAB 版本的特定版本。它的表示形式是小写 r 后跟版本的年份和版次。

例如,若要下载一个不包含 GPU 库的 R2025a 版 MATLAB Runtime 容器镜像,请在系统终端中执行以下命令:

docker pull containers.mathworks.com/matlab-runtime:r2025a

创建自定义 MATLAB Runtime Docker 镜像

自 R2023b 起

您可以使用 compiler.runtime.createDockerImage 函数来创建自定义的 MATLAB Runtime Docker 映像。这使您可以自定义图像;例如,使用不同的底图。

compiler.runtime.createDockerImage(buildResults, ...
    "BaseImage","my-baselayer", ...
    "ImageName","my-custom-matlabruntime:r2024b")

有关如何使用自定义基础层创建独立应用程序 Docker 镜像的示例,请参阅 使用自定义底图创建 Docker 图像

有关使用自定义基础层创建微服务的示例,请参阅 使用自定义基础层创建微服务 (MATLAB Compiler SDK)

注意

如果您无法访问 Docker 存储库,则必须先运行 compiler.runtime.createInstallerDockerImage,并指定 Linux MATLAB Runtime 安装程序的路径。

另请参阅

| | | (MATLAB Compiler SDK)

主题