Docker

社区维护了一个 Docker 镜像,可以在 DockerHub 上找到。对于我们的镜像 manimcommunity/manim,有以下标签:

注意

在 Docker 容器内使用 Manim 的 CLI 时,某些标志(如 -p(预览文件)和 -f(在文件浏览器中显示输出文件))不受支持。

Docker 容器的基本用法

假设您可以通过终端(bash / PowerShell)使用 docker 访问系统上的 docker 安装,您可以使用以下命令渲染文件 test_scenes.py 中的场景 CircleToSquare

docker run --rm -it -v "/full/path/to/your/directory:/manim" manimcommunity/manim manim -qm test_scenes.py CircleToSquare

提示

对于 Linux 用户,让容器内的用户写入挂载卷时可能会遇到权限问题。将 --user="$(id -u):$(id -g)" 添加到 docker CLI 参数中,以防止创建不属于您的用户的输出文件。

除了上述“一次性容器”方法,您还可以创建一个命名容器,并根据喜好进行修改。首先,运行

docker run -it --name my-manim-container -v "/full/path/to/your/directory:/manim" manimcommunity/manim bash

以在容器内获取交互式 shell,从而您可以安装更多依赖项(例如使用 tlmgr 安装 texlive 软件包)。一旦满意,即可退出容器。然后,在使用它之前,通过运行以下命令启动容器:

docker start my-manim-container

这将使容器在后台启动。然后,要渲染文件 test_scenes.py 中的场景 CircleToSquare,请运行

docker exec -it my-manim-container manim -qm test_scenes.py CircleToSquare

通过 Docker 运行 JupyterLab

使用 Docker 镜像的另一种选择是启动本地 JupyterLab 实例。要做到这一点,只需运行

docker run -it -p 8888:8888 manimcommunity/manim jupyter lab --ip=0.0.0.0

然后按照终端中的说明操作。