AI绘画Stable Diffusion服务器搭建实战教程
AI绘画Stable Diffusion服务器搭建实战教程:从零开始部署
最近不少朋友问我怎么在自己的服务器上搭一套AI绘画环境,我整理了一份零基础也能跟下来的教程。
本文围绕AI绘画Stable Diffusion服务器搭建展开,你只需要一台带NVIDIA显卡的Linux服务器(Ubuntu 22.04为例),跟着步骤走,一小时内就能跑通。
准备工作:硬件与系统要求
- 显卡:建议NVIDIA RTX 3060及以上,显存至少8GB。显存越大出图分辨率和Batch Size越高。
- 系统:Ubuntu 22.04 LTS(其他Linux发行版也可,但命令需微调)。
- 磁盘:至少50GB空闲空间,用于存放模型文件(Stable Diffusion模型经常10GB+)。
- 网络:能顺畅访问GitHub、Docker Hub、Hugging Face(国内用户可配置镜像源)。
- 已安装:SSH客户端(如Windows下用PowerShell或Putty)。
在正式开始AI绘画Stable Diffusion服务器搭建前,先更新系统包:
sudo apt update && sudo apt upgrade -y
第一步:安装NVIDIA驱动与CUDA
要让Stable Diffusion利用GPU加速,驱动是必须的。
执行以下命令查看显卡型号:
lspci | grep -i nvidia
确认型号后,安装官方驱动(这里使用Ubuntu自带库,一键安装):
sudo apt install nvidia-driver-535 -y
安装完成后重启:
sudo reboot
验证驱动是否生效:
nvidia-smi
如果看到GPU信息列表,驱动安装成功。
接着安装CUDA Toolkit(用于容器加速):
sudo apt install nvidia-cuda-toolkit -y
nvcc --version
CUDA版本11.8或12.x都可以,后续Docker镜像会匹配。
第二步:安装Docker与NVIDIA Container Toolkit
Docker能帮我们快速部署Stable Diffusion WebUI,避免手动配置环境。
依次执行:
# 安装Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
# 退出SSH重新登录或执行 newgrp docker 使组生效
安装NVIDIA Container Toolkit,让容器能调用GPU:
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt update
sudo apt install -y nvidia-docker2
sudo systemctl restart docker
验证容器能否识别GPU:
docker run --rm --gpus all nvidia/cuda:12.2.0-base-ubuntu22.04 nvidia-smi
若输出GPU信息,则一切就绪。
第三步:部署Stable Diffusion WebUI(Docker版本)
我们使用最流行的WebUI项目,官方Docker镜像。
创建目录并拉取镜像:
mkdir -p ~/stable-diffusion
cd ~/stable-diffusion
# 拉取镜像(首次较慢,约2GB)
docker pull ghcr.io/automatic1111/stable-diffusion-webui:latest
运行容器:
docker run -d --name sd-webui \
--gpus all \
-p 7860:7860 \
-v ~/stable-diffusion/models:/app/stable-diffusion-webui/models \
-v ~/stable-diffusion/outputs:/app/stable-diffusion-webui/outputs \
ghcr.io/automatic1111/stable-diffusion-webui:latest
解释:-d后台运行,-p映射端口(访问服务器IP:7860),-v挂载模型和输出目录到本地,方便后续替换模型。
启动后查看日志:
docker logs -f sd-webui
看到“Running on http://0.0.0.0:7860”即可。
避坑指南:常见问题与解决
问题1:启动容器时报“CUDA out of memory”
多半是显存不够。
可在WebUI启动参数中加--medvram或--lowvram。
修改docker run命令:在镜像后添加参数,例如:
docker run ... ghcr.io/automatic1111/stable-diffusion-webui:latest --medvram
问题2:下载模型超时或失败
国内用户建议配置Hugging Face镜像。
在容器启动前,先配置环境变量:
docker run -e HF_ENDPOINT=https://hf-mirror.com ...
或者手动下载模型文件放到~/stable-diffusion/models/Stable-diffusion/目录内。
问题3:访问7860端口被拒绝
检查云服务商安全组是否放行7860端口。
同时确认防火墙:
sudo ufw status
sudo ufw allow 7860/tcp
验证成果:生成第一张AI图片
打开浏览器输入http://你的服务器IP:7860,你会看到WebUI界面。
在Prompt框输入:
a cute cat sitting on a table, digital art
点击“Generate”,等待几秒后下方出现图片,说明AI绘画Stable Diffusion服务器搭建成功。
你也可以将生成的图片保存到本地,或调整参数尝试更多风格。
如果你在搭建过程中遇到其他问题,欢迎在评论区留言。
建议先按本文步骤完整执行一次,再根据自己的硬件调整优化参数。
祝你顺利跑出第一张AI美图!