在阿里云ECS上使用CentOS系统搭建机器学习环境,主要步骤包括:系统更新、安装Python及包管理工具、配置GPU驱动(如有)、安装深度学习框架等。以下是详细步骤:
✅ 一、准备工作
-
选择合适的ECS实例
- 推荐选择支持GPU的实例类型(如
ecs.gn6i-c8g1.4xlarge)用于深度学习训练。 - 确保安全组开放必要的端口(如SSH 22、Jupyter Notebook 8888等)。
- 推荐选择支持GPU的实例类型(如
-
连接到ECS实例
ssh root@<你的ECS公网IP>
✅ 二、系统更新与基础依赖安装
# 更新系统
sudo yum update -y
# 安装常用开发工具和依赖
sudo yum groupinstall "Development Tools" -y
sudo yum install wget git epel-release -y
✅ 三、安装Python环境(推荐使用Miniconda)
1. 下载并安装Miniconda
cd /tmp
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
- 按提示安装,建议接受默认路径(
~/miniconda3) - 安装完成后重启终端或运行:
source ~/.bashrc
2. 创建虚拟环境(可选但推荐)
conda create -n ml-env python=3.9
conda activate ml-env
✅ 四、安装CUDA和cuDNN(仅限GPU实例)
⚠️ 只有带NVIDIA GPU的实例才需要此步骤。
1. 添加ELRepo源(用于安装NVIDIA驱动)
sudo yum install elrepo-release -y
2. 安装NVIDIA驱动(自动检测)
sudo yum install kmod-nvidia nvidia-x11-drv -y
或者从NVIDIA官网下载对应驱动手动安装。
3. 安装CUDA Toolkit
# 下载CUDA安装包(以CUDA 11.8为例)
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
sudo sh cuda_11.8.0_520.61.05_linux.run
- 安装时取消勾选Driver(如果已安装),只安装CUDA Toolkit、Samples等。
4. 配置环境变量
echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
5. 验证CUDA安装
nvcc --version
nvidia-smi
✅ 五、安装机器学习常用库
# 在conda环境中安装
conda activate ml-env
# 安装核心库
pip install numpy pandas matplotlib scikit-learn jupyter
# 安装深度学习框架(根据需求选择)
# PyTorch(支持CUDA)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
# TensorFlow(支持GPU)
pip install tensorflow[and-cuda]
# 或安装CPU版本(无需GPU)
# pip install tensorflow
✅ 六、启动Jupyter Notebook(远程访问)
1. 生成配置文件
jupyter notebook --generate-config
2. 设置密码(推荐)
jupyter notebook password
3. 编辑配置文件
vim ~/.jupyter/jupyter_notebook_config.py
添加以下内容:
c.NotebookApp.ip = '0.0.0.0'
c.NotebookApp.port = 8888
c.NotebookApp.allow_remote_access = True
c.NotebookApp.open_browser = False
c.NotebookApp.password_required = True
4. 启动Jupyter
nohup jupyter notebook --allow-root > jupyter.log 2>&1 &
5. 访问方式
在浏览器中输入:
http://<ECS公网IP>:8888
输入设置的密码即可。
🔐 注意:建议结合Nginx + HTTPS + 反向X_X提升安全性。
✅ 七、其他优化建议
- 使用screen或tmux 防止SSH断开导致进程终止:
sudo yum install screen -y screen -S ml-training - 挂载数据盘 存放大型数据集。
- 定期备份 重要代码和模型。
✅ 常见问题排查
| 问题 | 解决方案 |
|---|---|
nvidia-smi 找不到 |
确认实例为GPU型,且驱动已正确安装 |
| Jupyter无法远程访问 | 检查安全组是否开放8888端口 |
pip install 太慢 |
使用国内镜像源: |
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
✅ 总结
你现在已经成功在阿里云ECS CentOS系统上搭建了完整的机器学习环境,支持:
- Python 3 + Conda 环境管理
- GPU提速(CUDA + cuDNN)
- 主流框架(PyTorch / TensorFlow)
- 远程Jupyter开发
接下来可以上传数据、训练模型或部署服务。
如需自动化部署,可编写Shell脚本或使用Terraform + Ansible进行运维管理。
需要我提供一键安装脚本或Docker方案吗?
云计算