Docker image for A1111 Stable Diffusion Web UI, Kohya_ss and ComfyUI
Now with SDXL support.
Installs
- 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
Available on RunPod
This image is designed to work on RunPod. You can use my custom RunPod template to launch it on RunPod.
Building the Docker image
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
Running Locally
Install Nvidia CUDA Driver
Start the Docker container
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.
Acknowledgements
- RunPod for providing most of the container code.
- Bernard Maltais (core developer of Kohya_ss) for assisting with optimizing the Docker image.
Community and Contributing
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.