mirror of
				https://github.com/AbdBarho/stable-diffusion-webui-docker.git
				synced 2025-11-04 03:03:14 -05:00 
			
		
		
		
	Compare commits
	
		
			13 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					eef83a318c | ||
| 
						 | 
					bc8ec0fe55 | ||
| 
						 | 
					f5e9997a55 | ||
| 
						 | 
					fec97dc9e1 | ||
| 
						 | 
					134130a3b2 | ||
| 
						 | 
					2ecfb0fe59 | ||
| 
						 | 
					89d8a17064 | ||
| 
						 | 
					05829c5ae3 | ||
| 
						 | 
					66c0658255 | ||
| 
						 | 
					b3fa72a614 | ||
| 
						 | 
					3efd62aac2 | ||
| 
						 | 
					b5537dbc78 | ||
| 
						 | 
					76bd1bf3cb | 
							
								
								
									
										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
 | 
			
		||||
    }
 | 
			
		||||
  ]
 | 
			
		||||
}
 | 
			
		||||
@@ -8,24 +8,51 @@ RUN conda install pytorch==1.11.0 torchvision==0.12.0 cudatoolkit=11.3 -c pytorc
 | 
			
		||||
RUN git clone https://github.com/hlky/stable-diffusion.git && cd stable-diffusion && git reset --hard 554bd068e6f2f6bc55449a67fe017ddd77090f28
 | 
			
		||||
RUN conda env update --file stable-diffusion/environment.yaml --name base && conda clean -a -y
 | 
			
		||||
 | 
			
		||||
# fonts
 | 
			
		||||
# fonts for generating the grid
 | 
			
		||||
RUN apt-get update && apt install fonts-dejavu-core && apt-get clean
 | 
			
		||||
 | 
			
		||||
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
 | 
			
		||||
# 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 c0c2a7c0d55561cfb6f42a3681346b9b70749ff1 && \
 | 
			
		||||
  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
 | 
			
		||||
 | 
			
		||||
# 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
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# add info
 | 
			
		||||
COPY info.py /info.py
 | 
			
		||||
RUN  python /info.py /stable-diffusion/frontend/frontend.py
 | 
			
		||||
 | 
			
		||||
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="" \
 | 
			
		||||
  GFPGAN_PATH=/stable-diffusion/src/gfpgan/experiments/pretrained_models/GFPGANv1.3.pth \
 | 
			
		||||
  RealESRGAN_PATH=/stable-diffusion/src/realesrgan/experiments/pretrained_models/RealESRGAN_x4plus.pth \
 | 
			
		||||
  RealESRGAN_ANIME_PATH=/stable-diffusion/src/realesrgan/experiments/pretrained_models/RealESRGAN_x4plus_anime_6B.pth
 | 
			
		||||
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 && \
 | 
			
		||||
CMD \
 | 
			
		||||
  for path in "${GFPGAN_PATH}" "${RealESRGAN_PATH}" "${RealESRGAN_ANIME_PATH}"; do \
 | 
			
		||||
  name=$(basename "${path}"); \
 | 
			
		||||
  base=$(dirname "${path}"); \
 | 
			
		||||
  test -f "/models/${name}" && mkdir -p "${base}" && ln -sf "/models/${name}" "${path}" && echo "Mounted ${name}";\
 | 
			
		||||
  done;\
 | 
			
		||||
  # 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
 | 
			
		||||
  python3 -u scripts/webui.py --outdir /output --save-metadata --ckpt /models/model.ckpt ${CLI_ARGS}
 | 
			
		||||
  python3 -u scripts/webui.py --outdir /output --ckpt /models/model.ckpt --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')
 | 
			
		||||
 | 
			
		||||
)
 | 
			
		||||
@@ -11,7 +11,7 @@ services:
 | 
			
		||||
      - ./output:/output
 | 
			
		||||
      - ./models:/models
 | 
			
		||||
    environment:
 | 
			
		||||
      - CLI_ARGS=--extra-models-cpu
 | 
			
		||||
      - CLI_ARGS=--gfpgan-gpu 0 --esrgan-cpu --optimized-turbo
 | 
			
		||||
    deploy:
 | 
			
		||||
      resources:
 | 
			
		||||
        reservations:
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user