在阿里云ECS(Elastic Compute Service)上进行深度学习是一个非常常见的应用场景。阿里云提供了灵活的计算资源和GPU实例,非常适合训练深度学习模型或部署推理服务。
下面我将从几个方面为你详细介绍如何在 阿里云ECS 上搭建和运行深度学习环境:
一、选择合适的ECS实例类型
1. GPU 实例类型推荐
深度学习任务通常需要 GPU ,阿里云提供多种类型的 GPU 实例:
| 实例类型 | GPU型号 | 适用场景 |
|---|---|---|
ecs.gn6v-c8g1i200-4 |
NVIDIA Tesla V100 32G | 高性能训练 |
ecs.gn5i-c8g1.2xlarge |
NVIDIA T4 | 推理或轻量级训练 |
ecs.gn7-c12g1d20vhz28-4 |
NVIDIA A100 40G | 大规模分布式训练 |
ecs.gn6e-c4g1.xlarge |
NVIDIA P100 | 轻量训练/开发测试 |
📌 建议:如果你是刚开始尝试,可以选择 T4 或者 V100 的实例;预算充足可选 A100。
二、操作系统选择
- Ubuntu 20.04/22.04 LTS(推荐)
- CentOS 7/8
- Alibaba Cloud Linux 2/3
Ubuntu 社区支持好,适合大多数深度学习框架安装。
三、环境配置步骤
1. 登录 ECS 实例
使用 SSH 登录你的 ECS:
ssh root@your_ecs_ip
2. 安装 NVIDIA 驱动
方法一:使用自动安装脚本(推荐)
sudo apt update
sudo apt install -y ubuntu-drivers-common
sudo ubuntu-drivers autoinstall
方法二:手动下载驱动安装
前往 NVIDIA 驱动官网 下载对应版本驱动并安装。
验证是否安装成功:
nvidia-smi
3. 安装 CUDA Toolkit 和 cuDNN
根据你使用的深度学习框架版本选择对应的 CUDA 和 cuDNN 版本。
例如,PyTorch 1.13 支持 CUDA 11.7,你可以安装:
sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/7fa2af80.pub
sudo sh -c 'echo "deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64 /" > /etc/apt/sources.list.d/cuda.list'
sudo apt update
sudo apt install -y cuda-11-7
cuDNN 可以通过以下命令安装(需登录 NVIDIA 开发者账号下载 deb 包):
sudo dpkg -i libcudnn8_*.deb
4. 安装 Anaconda / Python 环境
wget https://repo.anaconda.com/archive/Anaconda3-2023.03-Linux-x86_64.sh
bash Anaconda3-2023.03-Linux-x86_64.sh
source ~/.bashrc
创建虚拟环境:
conda create -n dl_env python=3.9
conda activate dl_env
5. 安装深度学习框架(如 PyTorch / TensorFlow)
PyTorch(带 CUDA 支持)
前往 PyTorch官网 获取安装命令,例如:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
TensorFlow
pip install tensorflow-gpu==2.12.0
验证是否识别 GPU:
import tensorflow as tf
print(tf.config.list_physical_devices('GPU'))
四、常用工具推荐
- Jupyter Notebook:用于交互式开发
- Docker:打包环境便于迁移
- FastAPI / Flask:部署模型 API
- ngrok / frp:访问本地 Jupyter
- OSS SDK:与阿里云对象存储集成,处理大规模数据集
五、成本优化建议
- 使用 抢占式实例(Spot Instance)降低成本,适用于非实时训练。
- 使用 弹性伸缩组 + 自动化脚本实现自动化训练。
- 训练完成后及时释放 GPU 实例。
- 使用 ESSD 云盘 提升 I/O 性能。
- 利用 阿里云 NAS 文件系统 共享数据集。
六、进阶:使用容器和 Kubernetes
如果你有多节点训练需求,可以结合:
- 阿里云 ACK(Kubernetes 服务)
- NVIDIA Docker + Kubernetes GPU 插件
实现多 GPU 分布式训练和管理。
七、常见问题
Q: nvidia-smi 不显示?
A: 检查是否安装了正确的 NVIDIA 显卡驱动,以及内核是否匹配。
Q: 深度学习框架无法调用 GPU?
A: 检查 CUDA 和 cuDNN 是否安装正确,并确认框架版本是否兼容。
Q: 如何远程访问 Jupyter Notebook?
A: 配置安全组开放端口 + 设置 token 或密码,或使用 ngrok 。
八、推荐资源
- 阿里云官方文档 – GPU 实例
- NVIDIA 官方驱动下载
- PyTorch 官网安装指南
- TensorFlow GPU 支持
如果你有具体的需求(比如要跑哪个模型、用什么框架、预算多少等),我可以进一步帮你定制方案!
是否需要我给你一个完整的 一键部署脚本?
CLOUD技术博