comfyui@comfyui在ubuntu-22.04基于A100部署
概述
搭建comfyui服务,提升绘图效率
1.前置检查
1.1系统/配置
Welcome to Ubuntu 22.04.3 LTS (GNU/Linux 5.15.0-86-generic x86_64)
8c 64g 2T A100 x1
1.2gpu类型
lspci | grep -i nvidia
00:06.0 3D controller: NVIDIA Corporation GA100 [A100 PCIe 40GB] (rev a1)
1.3磁盘挂载
fdisk -l
fdisk /dev/sdb # 新建分区
mkfs.ext4 /dev/sdb1 # 格式化分区
mkdir /data
/etc/fstab //配置磁盘挂载点
mount -a # 刷新挂载信息
roxxxx] df -hT
Filesystem Type Size Used Avail Use% Mounted on
tmpfs tmpfs 6.3G 1.1M 6.3G 1% /run
/dev/sda1 ext4 473G 5.6G 448G 2% /
..
/dev/sdb1 ext4 2.0T 28K 1.9T 1% /data
2.安装nvidia-driver
2.1寻找A100驱动
https://www.nvidia.cn/drivers/lookup/
2.2下载NVIDIA-Linux-x86_64-570.133.20.run
https://us.download.nvidia.com/tesla/570.133.20/NVIDIA-Linux-x86_64-570.133.20.run
2.3传到服务器或者直接在服务器上下载驱动包
pass
2.4安装编译依赖
apt-get update
apt install -y gcc make g++ kernel-devel cmake pkg-config build-essential
2.5安装驱动
chmod +x NVIDIA-Linux-x86_64-570.133.20.run
./NVIDIA-Linux-x86_64-570.133.20.run
- nvidia propertietary # 官方稳定
- MIT/GPL # 开源
禁用开源驱动nouveau yes
建议: 使用官方的驱动,稳定,安装完毕须重启系统
2.6驱动检查
nvidia-smi -pm 1 # 开启驱动常驻
nvidia-smi #检查驱动
3.安装miniconda环境
3.1在线安装miniconda
https://www.anaconda.com/docs/getting-started/miniconda/install#linux-terminal-installer
mkdir -p ~/miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
source ~/miniconda3/bin/activate
conda init --all
3.2创建comfyenv
conda create -n comfyenv python=3.13.2
conda activate comfyenv
3.3安装基于cuda12.8pytorch包
https://pytorch.org/get-started/locally/
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128
4.安装comfyui
4.1下载comfyui
https://github.com/comfyanonymous/ComfyUI/releases
tar zxf ComfyUI-0.3.34.tar.gz && mv ComfyUI-0.3.34 /data/
4.2pip3安装项目依赖
cd ComfyUI-0.3.34/
pip3 install -r requirements.txt
4.3启动comfyui
python main.py –listen 0.0.0.0 –port 8188
4.4启动/关闭脚本
/data/ComfyUI-0.3.34
start.sh
#!/bin/bash
# 初始化conda(重要)
source ~/miniconda3/etc/profile.d/conda.sh
# 激活环境
conda activate comfyenv
# google
#export http_proxy="http://127.0.0.1:7890"
#export https_proxy="http://127.0.0.1:7890"
nohup python main.py \
--listen 0.0.0.0 \
--port 8188 \
--input-directory /data/ftp/input \
--output-directory /data/ftp/output \
--temp-directory /data/ftp/temp \
>nohup.out 2>&1 &
stop.sh
#!/bin/bash
ps -ef |grep main.py |grep -v grep | awk '{print $2}' |xargs kill -9
5.模型下载
5.1百度网盘cli客户端
https://github.com/qjfoidnh/BaiduPCS-Go/releases/tag/v3.9.7
5.2获取百度网盘BDUSS/COOKIE
5.3下载模型
5.4移动模型到目标models
/root/Download/xxxxxx/ # 默认下载文件路径
mv xxx /data/ComfyUI-0.3.34/models/yyy/
6.依赖下载
6.1开启科学上网
https://github.com/MetaCubeX/mihomo/releases
./mihomo -f config.yml
#启动脚本新增代理配置
export http_proxy="http://127.0.0.1:7890"
export https_proxy="http://127.0.0.1:7890"
6.2下载自定义node
https://github.com/Comfy-Org/ComfyUI-Manager
cd /data/ComfyUI-0.3.34/custom_nodes/
git clone https://github.com/ltdrdata/ComfyUI-Manager comfyui-manager
7.工作流验证
7.1打开工作流 xxx.json
基于comfyui的,或者自己定义节点)
7.2执行绘图
默认图片:存储在comfyui/output目录下
8.vsftpd支持用户下载历史画图
8.1安装vsftpd
apt-get updat
apt install vsftpd
systemctl enable --now vsftpd
8.2新增ftp用户及目录
mkdir -p /data/ftp/output
useradd -m -s /sbin/nologin ftpmodels
chown -R ftpmodels: /data/ftp
passwd ftpmodels
8.3vsftpd配置
/etc/vsftpd.conf
listen=YES
listen_ipv6=NO
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
local_root=/data/ftp
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=40010
pasv_address=<public-ip>
pam_service_name=vsftpd
pasv_address填写实际外网IP
/etc/pam.d/vsftpd
# Standard behaviour for ftpd(8).
auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
auth required pam_unix.so
account required pam_unix.so
8.3启动vsftpd
systemctl restart vsftpd
8.4添加防火墙策略
加下访问策略 8188 21 40000-40010
8.5登录验证
ftp xxx@ip
传输模式:被动