docker-pytorch:实践指南
在项目中评估docker-pytorch,可以先看清用途边界:PyTorch 的 Docker 映像。实际做部署与运行环境时,经常会碰到权限、依赖和环境差异会放大维护成本,所以功能列表并不能代替验证。更实际的做法是在非生产环境复现一次安装与运行,同时核对依赖锁定、权限边界、日志、回滚和资源消耗,不要直接在关键项目上。如果团队属于愿意维护环境并重视故障恢复的工程团队,它有继续测试的理由;否则先看替代方案会更省时间。
PyTorch Docker 镜像
Ubuntu + PyTorch + CUDA(可选)
要求
为了使用此镜像,您必须安装 Docker 引擎。使用说明 用于设置 Docker Engine 的是 可在 Docker 网站 上找到。
CUDA 要求
如果您有 CUDA- 兼容的 NVIDIA 显卡,则可以使用 CUDA-enabled PyTorch 映像版本以启用硬件加速。我只有 在 Ubuntu Linux 中对此进行了测试。
首先,确保安装适当的 NVIDIA 驱动程序。在Ubuntu上,
我发现确保您拥有正确版本的最简单方法
设置的驱动程序是通过安装 CUDA _至少与
您打算使用的图像_via
官方 NVIDIA CUDA 下载页面。
例如,如果您打算使用 cuda-10.1 映像,则设置
CUDA 10.1 或 CUDA 10.2 应确保您拥有正确的图形驱动程序。
您还需要安装 NVIDIA 容器工具包以启用 GPU 设备 Docker 容器内的访问。这可以在以下位置找到: NVIDIA/nvidia-docker.
预建图像
预构建的镜像可以在 Docker Hub 上使用,名称为 anibali/pytorch.
例如,您可以使用以下命令拉取 PyTorch 2.0.1 和 CUDA 11.8 的映像:
$ docker pull anibali/pytorch:2.0.1-cuda11.8
用途
运行 PyTorch 脚本
可以使用以下命令在容器内运行 PyTorch 程序
python3 命令。例如,如果您位于包含以下内容的目录中:
一些带有入口点 main.py 的 PyTorch 项目,您可以使用以下命令运行它
以下命令:
docker run --rm -it --init
--gpus=all
--ipc=host
--user="$(id -u):$(id -g)"
--volume="$PWD:/app"
anibali/pytorch python3 main.py
以下是上面显示的 Docker 命令行选项的说明:
--gpus=all:如果使用 CUDA,则为必需,否则为可选。通过 显卡从主机到容器。您还可以更准确地 使用此选项控制暴露哪些显卡(请参阅文档 在 https://github.com/NVIDIA/nvidia-docker)。--ipc=host:如果使用多处理则需要,如所述 https://github.com/pytorch/pytorch#docker-image.--user="$(id -u):$(id -g)":设置容器内的用户以匹配您的 用户和组 ID。可选,但对于使用正确的方式写入文件很有用 所有权。--volume="$PWD:/app":将当前工作目录挂载到容器中。 容器内的默认工作目录是/app。选修的。
运行图形应用程序
如果您在 Linux 主机上运行,则可以在 Docker 内运行代码 使用主机 X 服务器显示图形的容器(这允许您使用 以 OpenCV 的 imshow 为例)。这里我们描述一个快速而肮脏的(但是INSECURE) 这样做的方法。有关 GUIs 和 Docker 的更全面指南请查看 http://wiki.ros.org/docker/Tutorials/GUI.
在主机上运行:
sudo xhost +local:root
您可以稍后使用 sudo xhost -local:root 撤销这些访问权限。
现在,当您运行容器时,请确保添加选项 -e "DISPLAY" 和
--volume="/tmp/.X11-unix:/tmp/.X11-unix:rw"。这将提供容器
与用于通信的 X11 插座和显示器 ID 一起使用。这是一个
示例:
docker run --rm -it --init
--gpus=all
-e "DISPLAY" --volume="/tmp/.X11-unix:/tmp/.X11-unix:rw"
anibali/pytorch python3 -c "import tkinter; tkinter.Tk().mainloop()"
派生您自己的图像
向映像添加额外依赖项的推荐方法是创建 您自己的 Dockerfile,使用此项目中的 PyTorch 映像之一作为基础。
例如,假设您需要 OpenCV 并希望使用 PyTorch
2.0.1。您可以使用以下命令创建自己的 Dockerfile
anibali/pytorch:2.0.1-cuda11.8-ubuntu22.04作为基础镜像并安装
OpenCV 使用额外的构建步骤:
FROM anibali/pytorch:2.0.1-cuda11.8-ubuntu22.04
# Set up time zone.
ENV TZ=UTC
RUN sudo ln -snf /usr/share/zoneinfo/$TZ /etc/localtime
# Install system libraries required by OpenCV.
RUN sudo apt-get update
&& sudo apt-get install -y libgl1-mesa-glx libgtk2.0-0 libsm6 libxext6
&& sudo rm -rf /var/lib/apt/lists/*
# Install OpenCV from PyPI.
RUN pip install opencv-python==4.5.1.48
-
09.11
transform:实践指南
-
09.11
MVDream:实践指南
-
09.11
FreeRedis:实践指南
-
09.11
webtransport:实践指南
-
09.11
BPL:实践指南
-
09.11
docker-pytorch:实践指南
-
- docker-pytorch:实践指南
- 09.11
-
- EASY-HWID-SPOOFER:实践指南
- 09.11
-
-
-
下载
- |
-
-
下载
- 《行尸走肉第一章》免安装中文汉化硬盘版下载
- 单机|436 MB
- 一款以动作冒险为主题的游戏
-
-
下载
- 《街头霸王X铁拳》免安装中文汉化硬盘版下载
- 单机|111MB
- 一款非常好玩的格斗游戏
-
-
下载
- |
-
-
下载
- 《暗黑破坏神3》免安装繁体中文正式版下载
- 单机|7630 MB
- 一款以角色扮演为主题的游戏
-
-
下载
- 《马克思佩恩3》免安装硬盘版下载
- 单机|27033 MB
- 一款以第三人称射击为主题的游戏