mirror of
				https://github.com/AbdBarho/stable-diffusion-webui-docker.git
				synced 2025-11-03 10:43:37 -05:00 
			
		
		
		
	Compare commits
	
		
			14 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					0d8b7d4ac8 | ||
| 
						 | 
					561664ea6e | ||
| 
						 | 
					77c2b2d217 | ||
| 
						 | 
					6c0c610f27 | ||
| 
						 | 
					dc730b7f6b | ||
| 
						 | 
					15952906a1 | ||
| 
						 | 
					4aaf38970a | ||
| 
						 | 
					61bd38dfe4 | ||
| 
						 | 
					bec4997639 | ||
| 
						 | 
					44903ca3aa | ||
| 
						 | 
					af409daa0e | ||
| 
						 | 
					19f9402076 | ||
| 
						 | 
					eef83a318c | ||
| 
						 | 
					bc8ec0fe55 | 
							
								
								
									
										29
									
								
								.github/ISSUE_TEMPLATE/bug.md
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								.github/ISSUE_TEMPLATE/bug.md
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,29 @@
 | 
				
			|||||||
 | 
					---
 | 
				
			||||||
 | 
					name: Bug
 | 
				
			||||||
 | 
					about: Report a bug
 | 
				
			||||||
 | 
					title: ''
 | 
				
			||||||
 | 
					labels: bug
 | 
				
			||||||
 | 
					assignees: ''
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**Has this issue been opened before? Check issues [here](https://github.com/AbdBarho/stable-diffusion-webui-docker/issues?q=is%3Aissue) and in [this one as well](https://github.com/hlky/stable-diffusion-webui)**
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**Describe the bug**
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**Steps to Reproduce**
 | 
				
			||||||
 | 
					1. Go to '...'
 | 
				
			||||||
 | 
					2. Click on '....'
 | 
				
			||||||
 | 
					3. Scroll down to '....'
 | 
				
			||||||
 | 
					4. See error
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**Hardware / Software:**
 | 
				
			||||||
 | 
					 - OS: [e.g. Windows / Ubuntu and version]
 | 
				
			||||||
 | 
					 - GPU: [Nvidia 1660 / No GPU]
 | 
				
			||||||
 | 
					 - Version [e.g. 22]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					**Additional context**
 | 
				
			||||||
 | 
					Any other context about the problem here. If applicable, add screenshots to help explain your problem.
 | 
				
			||||||
							
								
								
									
										22
									
								
								.vscode/launch.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								.vscode/launch.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
					  // Use IntelliSense to learn about possible attributes.
 | 
				
			||||||
 | 
					  // Hover to view descriptions of existing attributes.
 | 
				
			||||||
 | 
					  // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
 | 
				
			||||||
 | 
					  "version": "0.2.0",
 | 
				
			||||||
 | 
					  "configurations": [
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "name": "WebUI",
 | 
				
			||||||
 | 
					      "type": "python",
 | 
				
			||||||
 | 
					      "request": "launch",
 | 
				
			||||||
 | 
					      "program": "${file}",
 | 
				
			||||||
 | 
					      "cwd": "/stable-diffusion",
 | 
				
			||||||
 | 
					      "args": ["--ckpt", "${workspaceFolder}/models/model.ckpt", "--gfpgan-dir", "${workspaceFolder}/models/", "--extra-models-cpu"],
 | 
				
			||||||
 | 
					      "env": {
 | 
				
			||||||
 | 
					        "TRANSFORMERS_CACHE":"${workspaceFolder}/cache/transformers",
 | 
				
			||||||
 | 
					        "TORCH_HOME":"${workspaceFolder}/cache/torch"
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "console": "integratedTerminal",
 | 
				
			||||||
 | 
					      "justMyCode": false
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  ]
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										40
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										40
									
								
								README.md
									
									
									
									
									
								
							@@ -4,6 +4,14 @@ Run Stable Diffusion on your machine with a nice UI without any hassle!
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
This repository provides the [WebUI](https://github.com/hlky/stable-diffusion-webui) as docker for easy setup and deployment. Please note that this repo delivers all cutting-edge unstable changes from the WebUI, so expect some bugs.
 | 
					This repository provides the [WebUI](https://github.com/hlky/stable-diffusion-webui) as docker for easy setup and deployment. Please note that this repo delivers all cutting-edge unstable changes from the WebUI, so expect some bugs.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Features
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Interactive UI with many features, and more on the way!
 | 
				
			||||||
 | 
					- Support for 6GB GPU cards.
 | 
				
			||||||
 | 
					- GFPGAN for face reconstruction, RealESRGAN for super-sampling.
 | 
				
			||||||
 | 
					- [Textual Inversion](https://github.com/hlky/sd-enable-textual-inversion)
 | 
				
			||||||
 | 
					- many more!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Setup
 | 
					## Setup
 | 
				
			||||||
 | 
					
 | 
				
			||||||
make sure you have docker installed and up to date. Download this repo and run:
 | 
					make sure you have docker installed and up to date. Download this repo and run:
 | 
				
			||||||
@@ -14,23 +22,18 @@ docker compose build
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
you can let it build in the background while you download the different models
 | 
					you can let it build in the background while you download the different models
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- [Stable Diffusion v1.4 (4GB)](https://drive.yerf.org/wl/?id=EBfTrmcCCUAGaQBXVIj5lJmEhjoP1tgl), rename to `model.ckpt`
 | 
					- [Stable Diffusion v1.4 (4GB)](https://www.googleapis.com/storage/v1/b/aai-blog-files/o/sd-v1-4.ckpt?alt=media), rename to `model.ckpt`
 | 
				
			||||||
- (Optional) [GFPGANv1.3.pth (333MB)](https://github.com/TencentARC/GFPGAN/releases/download/v1.3.0/GFPGANv1.3.pth) to improve generated faces.
 | 
					- (Optional) [GFPGANv1.3.pth (333MB)](https://github.com/TencentARC/GFPGAN/releases/download/v1.3.0/GFPGANv1.3.pth).
 | 
				
			||||||
- (Optional) [RealESRGAN_x4plus.pth (64MB)](https://github.com/xinntao/Real-ESRGAN/releases/download/v0.1.0/RealESRGAN_x4plus.pth) and [RealESRGAN_x4plus_anime_6B.pth (18MB)](https://github.com/xinntao/Real-ESRGAN/releases/download/v0.2.2.4/RealESRGAN_x4plus_anime_6B.pth) for super-sampling.
 | 
					- (Optional) [RealESRGAN_x4plus.pth (64MB)](https://github.com/xinntao/Real-ESRGAN/releases/download/v0.1.0/RealESRGAN_x4plus.pth) and [RealESRGAN_x4plus_anime_6B.pth (18MB)](https://github.com/xinntao/Real-ESRGAN/releases/download/v0.2.2.4/RealESRGAN_x4plus_anime_6B.pth).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Put all of the downloaded models in the `models` folder, the folder structure should look something like this:
 | 
					Put all of the downloaded files in the `models` folder, it should look something like this:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
├── README.md
 | 
					models/
 | 
				
			||||||
├── docker-compose.yml
 | 
					├── GFPGANv1.3.pth
 | 
				
			||||||
├── build
 | 
					├── RealESRGAN_x4plus.pth
 | 
				
			||||||
├── cache
 | 
					├── RealESRGAN_x4plus_anime_6B.pth
 | 
				
			||||||
├── models
 | 
					└── model.ckpt
 | 
				
			||||||
│   ├── GFPGANv1.3.pth
 | 
					 | 
				
			||||||
│   ├── RealESRGAN_x4plus.pth
 | 
					 | 
				
			||||||
│   ├── RealESRGAN_x4plus_anime_6B.pth
 | 
					 | 
				
			||||||
│   └── model.ckpt
 | 
					 | 
				
			||||||
├── output
 | 
					 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Run
 | 
					## Run
 | 
				
			||||||
@@ -47,7 +50,14 @@ Note: the first start will take sometime as some other models will be downloaded
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
## Config
 | 
					## Config
 | 
				
			||||||
 | 
					
 | 
				
			||||||
in the `docker-compose.yml` you can change the `CLI_ARGS` variable contains all of the variables that will be passed to [the web ui](https://github.com/hlky/stable-diffusion-webui/blob/49e6178fd82ca736f9bbc621c6b12487c300e493/webui.py), by default: `--extra-models-cpu --optimized-turbo` are given, which allow you to use this model on a 6GB GPU.
 | 
					in the `docker-compose.yml` you can change the `CLI_ARGS` variable, which contains the arguments that will be passed to the WebUI. By default: `--extra-models-cpu --optimized-turbo` are given, which allow you to use this model on a 6GB GPU. However, some features might not be available in the mode.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[You can find the full list of arguments here](https://github.com/hlky/stable-diffusion/blob/c5b2c86f1479dec75b0e92dd37f9357a68594bda/scripts/webui.py)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## FAQ
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- To enable [Textual Inversion](https://github.com/hlky/sd-enable-textual-inversion) remove `--optimize` and `--optimize-turbo` flags and add `--no-half`, [more info here](https://github.com/AbdBarho/stable-diffusion-webui-docker/issues/6).
 | 
				
			||||||
 | 
					- If [output is a always green imagee](https://github.com/AbdBarho/stable-diffusion-webui-docker/issues/9), use `--precision full --no-half`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Disclaimer
 | 
					# Disclaimer
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -5,35 +5,35 @@ FROM continuumio/miniconda3:4.12.0
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
RUN conda install python=3.8.5 && conda clean -a -y
 | 
					RUN conda install python=3.8.5 && conda clean -a -y
 | 
				
			||||||
RUN conda install pytorch==1.11.0 torchvision==0.12.0 cudatoolkit=11.3 -c pytorch && conda clean -a -y
 | 
					RUN conda install pytorch==1.11.0 torchvision==0.12.0 cudatoolkit=11.3 -c pytorch && conda clean -a -y
 | 
				
			||||||
RUN git clone https://github.com/hlky/stable-diffusion.git && cd stable-diffusion && git reset --hard 554bd068e6f2f6bc55449a67fe017ddd77090f28
 | 
					RUN git clone https://github.com/hlky/stable-diffusion.git && cd stable-diffusion && git reset --hard ff8c2d0b709f1e4180fb19fa5c27ec28c414cedd
 | 
				
			||||||
RUN conda env update --file stable-diffusion/environment.yaml --name base && conda clean -a -y
 | 
					RUN conda env update --file stable-diffusion/environment.yaml --name base && conda clean -a -y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# fonts for generating the grid
 | 
					# fonts for generating the grid
 | 
				
			||||||
RUN apt-get update && apt install fonts-dejavu-core && apt-get clean
 | 
					RUN apt-get update && apt install fonts-dejavu-core rsync -y && apt-get clean
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Note: don't update the sha of previous versions because the install will take forever
 | 
					# Note: don't update the sha of previous versions because the install will take forever
 | 
				
			||||||
# instead, update the repo state in a later step
 | 
					# instead, update the repo state in a later step
 | 
				
			||||||
RUN cd stable-diffusion && git pull && git reset --hard c0c2a7c0d55561cfb6f42a3681346b9b70749ff1 && \
 | 
					RUN cd stable-diffusion && git pull && git reset --hard c5b2c86f1479dec75b0e92dd37f9357a68594bda && \
 | 
				
			||||||
  conda env update --file environment.yaml --name base && conda clean -a -y
 | 
					  conda env update --file environment.yaml --name base && conda clean -a -y
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# download dev UI version, update the sha below in case you want some other version
 | 
					# download dev UI version, update the sha below in case you want some other version
 | 
				
			||||||
RUN <<EOF
 | 
					# RUN <<EOF
 | 
				
			||||||
git clone https://github.com/hlky/stable-diffusion-webui.git
 | 
					# git clone https://github.com/hlky/stable-diffusion-webui.git
 | 
				
			||||||
cd stable-diffusion-webui
 | 
					# cd stable-diffusion-webui
 | 
				
			||||||
# map to this file: https://github.com/hlky/stable-diffusion-webui/blob/master/.github/sync.yml
 | 
					# # map to this file: https://github.com/hlky/stable-diffusion-webui/blob/master/.github/sync.yml
 | 
				
			||||||
git reset --hard 49e6178fd82ca736f9bbc621c6b12487c300e493
 | 
					# git reset --hard 49e6178fd82ca736f9bbc621c6b12487c300e493
 | 
				
			||||||
cp -t /stable-diffusion/scripts/ webui.py relauncher.py txt2img.yaml
 | 
					# cp -t /stable-diffusion/scripts/ webui.py relauncher.py txt2img.yaml
 | 
				
			||||||
cp -t /stable-diffusion/configs/webui webui.yaml
 | 
					# cp -t /stable-diffusion/configs/webui webui.yaml
 | 
				
			||||||
cp -t /stable-diffusion/frontend/ frontend/*
 | 
					# cp -t /stable-diffusion/frontend/ frontend/*
 | 
				
			||||||
cd / && rm -rf stable-diffusion-webui
 | 
					 | 
				
			||||||
EOF
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# For testing different versions:
 | 
					 | 
				
			||||||
# RUN git clone https://github.com/AbdBarho/stable-diffusion-webui.git && cd stable-diffusion-webui && \
 | 
					 | 
				
			||||||
#   git checkout respect-cli-params &&\
 | 
					 | 
				
			||||||
#   cp -t /stable-diffusion/scripts/ txt2img.yaml webui.py webui.yaml webui_playground.py && \
 | 
					 | 
				
			||||||
# cd / && rm -rf stable-diffusion-webui
 | 
					# cd / && rm -rf stable-diffusion-webui
 | 
				
			||||||
 | 
					# EOF
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Textual-inversion:
 | 
				
			||||||
 | 
					RUN <<EOF
 | 
				
			||||||
 | 
					git clone https://github.com/hlky/sd-enable-textual-inversion.git &&
 | 
				
			||||||
 | 
					cd /sd-enable-textual-inversion && git reset --hard 08f9b5046552d17cf7327b30a98410222741b070 &&
 | 
				
			||||||
 | 
					rsync -a /sd-enable-textual-inversion/ /stable-diffusion/
 | 
				
			||||||
 | 
					EOF
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# add info
 | 
					# add info
 | 
				
			||||||
COPY info.py /info.py
 | 
					COPY info.py /info.py
 | 
				
			||||||
@@ -52,7 +52,7 @@ CMD \
 | 
				
			|||||||
  test -f "/models/${name}" && mkdir -p "${base}" && ln -sf "/models/${name}" "${path}" && echo "Mounted ${name}";\
 | 
					  test -f "/models/${name}" && mkdir -p "${base}" && ln -sf "/models/${name}" "${path}" && echo "Mounted ${name}";\
 | 
				
			||||||
  done;\
 | 
					  done;\
 | 
				
			||||||
  # force facexlib cache
 | 
					  # force facexlib cache
 | 
				
			||||||
  mkdir -p /cache/weights/ && rm -rf /opt/conda/lib/python3.8/site-packages/facexlib/weights && \
 | 
					  mkdir -p /cache/weights/ && rm -rf /stable-diffusion/src/facexlib/facexlib/weights && \
 | 
				
			||||||
  ln -sf  /cache/weights/ /opt/conda/lib/python3.8/site-packages/facexlib/ && \
 | 
					  ln -sf  /cache/weights/ /stable-diffusion/src/facexlib/facexlib/ && \
 | 
				
			||||||
  # run, -u to not buffer stdout / stderr
 | 
					  # run, -u to not buffer stdout / stderr
 | 
				
			||||||
  python3 -u scripts/webui.py --outdir /output --ckpt /models/model.ckpt --save-metadata ${CLI_ARGS}
 | 
					  python3 -u scripts/webui.py --outdir /output --ckpt /models/model.ckpt --save-metadata ${CLI_ARGS}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user