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
然后按照终端中的说明操作。