自定义 Deep Learning 容器 - AWS 深度学习容器

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

自定义 Deep Learning 容器

Deep Learning Containers 专为特定的机器学习框架、基础设施和亚马逊云服务而构建。可用图像及其相应标签的完整列表可在此处获得。这些容器预先配置了基本的依赖关系,无需手动设置和优化,并且可以通过 Amazon Elastic Container Registry (ECR) 随时获得。此外,这些容器旨在与各种亚马逊云服务无缝协作,包括亚马逊、亚马逊 EKS SageMaker、Amazon 和 Ama EC2 zon ECS。

教程

在以下教程中,我们将探讨如何自定义 PyTorch 训练容器,并为您提供容器自定义的实际示例。

  • 选择最新的 PyTorch 训练图片:2.7 训练 GPU 图片的标签是-2.7.1-gpu-py3 PyTorch 12-cu128-ubuntu22.04-ec2

  • 此镜像包括关键组件的稳定版本,包括 NVIDIA CUDA、cuDNN 和 EFA。如果您正在寻找有关 PyTorch 2.7 Training 图像中包含的库、框架和组件的详细信息,请参阅此处的发行说明。

使用此基础镜像创建一个 Dockerfile。

FROM 763104351884.dkr.ecr.us-east-1.amazonaws.com/pytorch-training:2.7.1-gpu-py312-cu128-ubuntu22.04-ec2 # Add custom code and testing scripts required

使用 Docker 映像的自定义名称和自定义标签构建映像,同时指向您的个人 Docker 注册表(通常为您的用户名)。

$ docker build -t <registry>/<any name>:<any tag>

您可以使用以下命令来运行容器,并且 “--gpus all” 标志可确保在运行容器时访问 GPU。

$ docker run -it --gpus all <registry>/<image-name>:<tag>

推送至您的个人 Docker 注册表:

$ docker push <registry>/<any name>:<any tag>
重要

你可能需要登录才能访问 Deep Learning Containers 图像存储库。在以下命令中指定您的区域:

$ aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin 763104351884.dkr.ecr.us-east-1.amazonaws.com

在构建和推送映像时,请记住将注册表名称和标签替换为实际的注册表名称。