자체 GPU 서버에서 이미지를 생성하면 제3자가 보관하는 프롬프트 로그도, 원하지 않는 콘텐츠 필터도 없고, 이미지를 몇 장 만들든 비용이 일정합니다. 이 가이드는 Ubuntu에 Stable Diffusion 등을 위한 노드 기반 인터페이스인 ComfyUI를 설정합니다.
GPU 선택
비디오 메모리가 제약 조건입니다. 8 GB는 SD 1.5를 무난히 실행하고, 12~16 GB는 SDXL을 잘 처리하며, 24 GB는 더 새롭고 큰 모델과 높은 해상도에 여유를 줍니다. 잘 모르겠다면 소비자용 GPU와 데이터센터 GPU 비교를 참고하세요. 모델 파일이 크므로 디스크도 약 50 GB 남겨 두세요.
1단계: 드라이버 확인
nvidia-smi
GPU가 출력되면 드라이버가 작동하는 것입니다. 그렇지 않다면 sudo ubuntu-drivers autoinstall로 권장 드라이버를 설치하고 재부팅하세요.
2단계: ComfyUI 설치
sudo apt update && sudo apt install -y git python3-venv
git clone https://github.com/comfyanonymous/ComfyUI
cd ComfyUI
python3 -m venv venv
. venv/bin/activate
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu121
pip install -r requirements.txt
CUDA wheel 인덱스를 PyTorch가 드라이버에 권장하는 버전에 맞추세요. 위 명령이 바뀌었다면 PyTorch 설치 페이지를 확인하세요.
3단계: 모델 추가
사용 권한이 있는 체크포인트를 ComfyUI/models/checkpoints/에 다운로드하세요. 모델로 제품을 만들기 전에 상업적 이용에 관한 모델의 라이선스를 읽어 보세요.
cd models/checkpoints
wget -O model.safetensors "https://example.com/path/to/model.safetensors"
4단계: 비공개로 시작
기본적으로 ComfyUI는 localhost에서만 수신하며, 이것이 올바른 설정입니다. SSH 터널로 접속하세요.
python main.py --listen 127.0.0.1 --port 8188
ssh -L 8188:127.0.0.1:8188 user@your-server
내 컴퓨터에서 http://127.0.0.1:8188을 여세요. 포트를 인터넷에 노출하지 마세요. 기본적으로 로그인이 없습니다.
5단계: 계속 실행되게 하기
sudo tee /etc/systemd/system/comfyui.service > /dev/null <<'UNIT'
[Unit]
Description=ComfyUI
After=network-online.target
[Service]
User=ubuntu
WorkingDirectory=/home/ubuntu/ComfyUI
ExecStart=/home/ubuntu/ComfyUI/venv/bin/python main.py --listen 127.0.0.1
Restart=on-failure
[Install]
WantedBy=multi-user.target
UNIT
sudo systemctl daemon-reload && sudo systemctl enable --now comfyui
사용자와 경로를 서버에 맞게 조정하세요.
호스팅 도구와의 비용 및 개인정보 비교
- 비용: 시간제 GPU는 이미지를 열 장 만들든 만 장 만들든 비용이 같습니다. 대량으로 생성할 때는 이미지당 요금제보다 유리하고, 가끔 생성할 때는 불리하므로 사용하지 않을 때는 서버를 중지하세요.
- 개인정보: 프롬프트와 결과물이 내가 통제하는 기기에 남으며, Monero나 다른 코인으로 신분증 없이 결제할 수 있습니다.
- 통제권: 모델, 샘플러, 안전 설정을 직접 선택하며, 그 사용에 대한 책임도 직접 집니다.
같은 하드웨어에서 텍스트 모델을 쓰려면 Ollama와 Open WebUI를 참고하세요.