mirror of
				https://github.com/AbdBarho/stable-diffusion-webui-docker.git
				synced 2025-10-29 17:24:25 -04:00 
			
		
		
		
	Compare commits
	
		
			27 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 9cbd58b3f4 | ||
|  | 089fc524d8 | ||
|  | 0d8b7d4ac8 | ||
|  | 561664ea6e | ||
|  | 77c2b2d217 | ||
|  | 6c0c610f27 | ||
|  | dc730b7f6b | ||
|  | 15952906a1 | ||
|  | 4aaf38970a | ||
|  | 61bd38dfe4 | ||
|  | bec4997639 | ||
|  | 44903ca3aa | ||
|  | af409daa0e | ||
|  | 19f9402076 | ||
|  | eef83a318c | ||
|  | bc8ec0fe55 | ||
|  | f5e9997a55 | ||
|  | fec97dc9e1 | ||
|  | 134130a3b2 | ||
|  | 2ecfb0fe59 | ||
|  | 89d8a17064 | ||
|  | 05829c5ae3 | ||
|  | 66c0658255 | ||
|  | b3fa72a614 | ||
|  | 3efd62aac2 | ||
|  | b5537dbc78 | ||
|  | 76bd1bf3cb | 
							
								
								
									
										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 the [FAQ](https://github.com/AbdBarho/stable-diffusion-webui-docker/wiki/Main), the [issues](https://github.com/AbdBarho/stable-diffusion-webui-docker/issues?q=is%3Aissue) and in [the issues in the WebUI repo](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 | ||||||
|  |     } | ||||||
|  |   ] | ||||||
|  | } | ||||||
| @@ -2,30 +2,63 @@ | |||||||
|  |  | ||||||
| FROM continuumio/miniconda3:4.12.0 | 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 | # Fix: Module PIL has not attribute "Resampling" | ||||||
| RUN apt-get update && apt install fonts-dejavu-core && apt-get clean | RUN conda install -c anaconda pillow==9.2.0 && conda clean -a -y | ||||||
|  |  | ||||||
| RUN git clone https://github.com/hlky/stable-diffusion-webui.git && cd stable-diffusion-webui && \ |  | ||||||
|   git reset --hard 33890563d237889aca7cbc4f04ae42b885aee07e && \ |  | ||||||
|   cp -t /stable-diffusion/scripts/ txt2img.yaml webui.py webui.yaml webui_playground.py && \ |  | ||||||
|   cd / && rm -rf stable-diffusion-webui |  | ||||||
|  |  | ||||||
|  | SHELL ["/bin/bash", "-ceuxo", "pipefail"] | ||||||
|  |  | ||||||
|  | # fonts for generating the grid | ||||||
|  | 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 | ||||||
|  | # instead, update the repo state in a later step | ||||||
|  | RUN cd stable-diffusion && git pull && git reset --hard d667ff52a36b4e79526f01555bfbf85428f334ce && \ | ||||||
|  |   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 | ||||||
|  | # RUN <<EOF | ||||||
|  | # git clone https://github.com/hlky/stable-diffusion-webui.git | ||||||
|  | # cd stable-diffusion-webui | ||||||
|  | # # map to this file: https://github.com/hlky/stable-diffusion-webui/blob/master/.github/sync.yml | ||||||
|  | # git reset --hard 49e6178fd82ca736f9bbc621c6b12487c300e493 | ||||||
|  | # cp -t /stable-diffusion/scripts/ webui.py relauncher.py txt2img.yaml | ||||||
|  | # cp -t /stable-diffusion/configs/webui webui.yaml | ||||||
|  | # cp -t /stable-diffusion/frontend/ frontend/* | ||||||
|  | # 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/ && | ||||||
|  | rm -rf /sd-enable-textual-inversion | ||||||
|  | EOF | ||||||
|  |  | ||||||
|  | # Latent diffusion | ||||||
|  | RUN <<EOF | ||||||
|  | git clone https://github.com/devilismyfriend/latent-diffusion && | ||||||
|  | cd /latent-diffusion && | ||||||
|  | git reset --hard 4119cf038fb953360fb004e48adb9913eed3594a && | ||||||
|  | # hacks all the way down | ||||||
|  | mv ldm ldm_latent && | ||||||
|  | sed -i -- 's/from ldm/from ldm_latent/g' *.py | ||||||
|  | # dont forget to update the yaml!! | ||||||
|  | EOF | ||||||
|  |  | ||||||
|  |  | ||||||
|  | # add info | ||||||
|  | COPY . /docker/ | ||||||
|  | RUN python /docker/info.py /stable-diffusion/frontend/frontend.py | ||||||
|  |  | ||||||
| WORKDIR /stable-diffusion | WORKDIR /stable-diffusion | ||||||
| ENV TRANSFORMERS_CACHE=/cache/transformers TORCH_HOME=/cache/torch CLI_ARGS="" | ENV TRANSFORMERS_CACHE=/cache/transformers TORCH_HOME=/cache/torch CLI_ARGS="" | ||||||
|  |  | ||||||
| EXPOSE 7860 | EXPOSE 7860 | ||||||
| CMD ln -sf /models/model.ckpt /stable-diffusion/models/ldm/stable-diffusion-v1/model.ckpt && \ |  | ||||||
|   ln -sf /models/GFPGANv1.3.pth   /stable-diffusion/src/gfpgan/experiments/pretrained_models/GFPGANv1.3.pth && \ |  | ||||||
|   ln -sf /models/RealESRGAN_x4plus.pth   /stable-diffusion/src/realesrgan/experiments/pretrained_models/RealESRGAN_x4plus.pth && \ |  | ||||||
|   # force facexlib cache |  | ||||||
|   mkdir -p /cache/weights/ && rm -rf /opt/conda/lib/python3.8/site-packages/facexlib/weights && \ |  | ||||||
|   ln -sf  /cache/weights/ /opt/conda/lib/python3.8/site-packages/facexlib/ && \ |  | ||||||
| # run, -u to not buffer stdout / stderr | # run, -u to not buffer stdout / stderr | ||||||
|   python3 -u scripts/webui.py --outdir /output --save-metadata --ckpt /models/model.ckpt ${CLI_ARGS} | CMD /docker/mount.sh && python3 -u scripts/webui.py --outdir /output --ckpt /models/model.ckpt --ldsr-dir /latent-diffusion --save-metadata ${CLI_ARGS} | ||||||
|   | |||||||
							
								
								
									
										15
									
								
								build/info.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								build/info.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,15 @@ | |||||||
|  | import sys | ||||||
|  | from pathlib import Path | ||||||
|  |  | ||||||
|  | file = Path(sys.argv[1]) | ||||||
|  | file.write_text( | ||||||
|  |   file.read_text()\ | ||||||
|  |   .replace('<p>For help and advanced usage guides,', """ | ||||||
|  |   <p> | ||||||
|  |     Created using <a href="https://github.com/AbdBarho/stable-diffusion-webui-docker">stable-diffusion-webui-docker</a>. | ||||||
|  |   </p> | ||||||
|  |   <p>For help and advanced usage guides, | ||||||
|  | """, 1)\ | ||||||
|  |   .replace('img2img_cfg = gr.Slider(minimum=1.0, maximum=30.0', 'img2img_cfg = gr.Slider(minimum=1.0, maximum=60.0') | ||||||
|  |  | ||||||
|  | ) | ||||||
							
								
								
									
										31
									
								
								build/mount.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								build/mount.sh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,31 @@ | |||||||
|  | #!/bin/bash | ||||||
|  |  | ||||||
|  | set -e | ||||||
|  |  | ||||||
|  | declare -A MODELS | ||||||
|  | MODELS["/stable-diffusion/src/gfpgan/experiments/pretrained_models/GFPGANv1.3.pth"]=GFPGANv1.3.pth | ||||||
|  | MODELS["/stable-diffusion/src/realesrgan/experiments/pretrained_models/RealESRGAN_x4plus.pth"]=RealESRGAN_x4plus.pth | ||||||
|  | MODELS["/stable-diffusion/src/realesrgan/experiments/pretrained_models/RealESRGAN_x4plus_anime_6B.pth"]=RealESRGAN_x4plus_anime_6B.pth | ||||||
|  | MODELS["/latent-diffusion/experiments/pretrained_models/model.ckpt"]=LDSR.ckpt | ||||||
|  | # MODELS["/latent-diffusion/experiments/pretrained_models/project.yaml"]=LDSR.yaml | ||||||
|  |  | ||||||
|  | for path in "${!MODELS[@]}"; do | ||||||
|  |   name=${MODELS[$path]} | ||||||
|  |   base=$(dirname "${path}") | ||||||
|  |   from_path="/models/${name}" | ||||||
|  |   if test -f "${from_path}"; then | ||||||
|  |     mkdir -p "${base}" && ln -sf "${from_path}" "${path}" && echo "Mounted ${name}" | ||||||
|  |   else | ||||||
|  |     echo "Skipping ${name}" | ||||||
|  |   fi | ||||||
|  | done | ||||||
|  |  | ||||||
|  | # hack for latent-diffusion | ||||||
|  | if test -f /models/LDSR.yaml; then | ||||||
|  |   sed 's/ldm\./ldm_latent\./g' /models/LDSR.yaml >/latent-diffusion/experiments/pretrained_models/project.yaml | ||||||
|  | fi | ||||||
|  |  | ||||||
|  | # force facexlib cache | ||||||
|  | mkdir -p /cache/weights/ | ||||||
|  | rm -rf /stable-diffusion/src/facexlib/facexlib/weights | ||||||
|  | ln -sf /cache/weights/ /stable-diffusion/src/facexlib/facexlib/ | ||||||
| @@ -11,7 +11,7 @@ services: | |||||||
|       - ./output:/output |       - ./output:/output | ||||||
|       - ./models:/models |       - ./models:/models | ||||||
|     environment: |     environment: | ||||||
|       - CLI_ARGS=--extra-models-cpu |       - CLI_ARGS=--extra-models-cpu --optimized-turbo | ||||||
|     deploy: |     deploy: | ||||||
|       resources: |       resources: | ||||||
|         reservations: |         reservations: | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								models/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								models/.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -2,3 +2,5 @@ | |||||||
| /GFPGANv1.3.pth | /GFPGANv1.3.pth | ||||||
| /RealESRGAN_x4plus.pth | /RealESRGAN_x4plus.pth | ||||||
| /RealESRGAN_x4plus_anime_6B.pth | /RealESRGAN_x4plus_anime_6B.pth | ||||||
|  | /LDSR.ckpt | ||||||
|  | /LDSR.yaml | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user