This is a heavily modified fork of https://github.com/ashleykleynhans/stable-diffusion-docker
The fork status had to be removed for Github Actions to work properly.
The main changes from that project include:
- Addition of InvokeAI and ComfyUI
- MUCH smaller container size
- Direct runtime installation into the
/workspace
(designed for runpod.io)
Check out the image builds at h3mul/sd-ultimate, or give it a try directly on runpod.io
Now with SDXL support.
- Ubuntu 22.04 LTS
- CUDA 11.8
- Python 3.10.12
- Automatic1111 Stable Diffusion Web UI 1.6.0
- Dreambooth extension 1.0.14
- Deforum extension
- ControlNet extension v1.1.416
- After Detailer extension v23.11.0
- Locon extension
- ReActor extension (replaces roop)
- Inpaint Anything extension
- Infinite Image Browsing extension
- CivitAI extension
- CivitAI Browser+ extension
- Kohya_ss v22.2.1
- ComfyUI
- ComfyUI Manager
- Torch 2.0.1
- xformers 0.0.22
- sd_xl_base_1.0.safetensors
- sd_xl_refiner_1.0.safetensors
- sdxl_vae.safetensors
- inswapper_128.onnx
- runpodctl
- croc
- rclone
- Application Manager
This image is designed to work on RunPod. You can use my custom RunPod template to launch it on RunPod.
Since the Stable Diffusion models are pretty large, you will need at least 8GB of system memory (not GPU VRAM) to build this image.
The image CAN be built on a t3a.large
AWS EC2 instance
which has 2 x vCPU and 8GB of system memory. It CANNOT be built on
any instances with less memory, eg. t3a.medium
.
# Clone the repo
git clone https://github.com/ashleykleynhans/stable-diffusion-docker.git
# Download the models
cd stable-diffusion-docker
wget https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned.safetensors
wget https://huggingface.co/stabilityai/sd-vae-ft-mse-original/resolve/main/vae-ft-mse-840000-ema-pruned.safetensors
wget https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors
wget https://huggingface.co/stabilityai/stable-diffusion-xl-refiner-1.0/resolve/main/sd_xl_refiner_1.0.safetensors
wget https://huggingface.co/madebyollin/sdxl-vae-fp16-fix/resolve/main/sdxl_vae.safetensors
# Build and tag the image
docker build -t username/image-name:1.0.0 .
# Log in to Docker Hub
docker login
# Push the image to Docker Hub
docker push username/image-name:1.0.0
docker run -d \
--gpus all \
-v /workspace \
-p 3000:3001 \
-p 3010:3011 \
-p 3020:3021 \
-p 6006:6066 \
-p 8888:8888 \
-e JUPYTER_PASSWORD=Jup1t3R! \
-e ENABLE_TENSORBOARD=1 \
ashleykza/stable-diffusion-webui:latest
You can obviously substitute the image name and tag with your own.
- RunPod for providing most of the container code.
- Bernard Maltais (core developer of Kohya_ss) for assisting with optimizing the Docker image.
Pull requests and issues on GitHub are welcome. Bug fixes and new features are encouraged.
You can contact me and get help with deploying your container to RunPod on the RunPod Discord Server below, my username is ashleyk.