stable-diffusion-webui-docker/build/Dockerfile

46 lines
2.3 KiB
Docker
Raw Normal View History

2022-08-27 11:38:12 +00:00
# syntax=docker/dockerfile:1
FROM continuumio/miniconda3:4.12.0
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 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
2022-08-28 11:35:40 +00:00
# fonts for generating the grid
2022-08-27 17:40:42 +00:00
RUN apt-get update && apt install fonts-dejavu-core && apt-get clean
2022-08-27 11:38:12 +00:00
2022-08-28 11:35:40 +00:00
# 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 6b442c05296dd350fcf7f752e17c4b4bb015a03b && \
conda env update --file environment.yaml --name base && conda clean -a -y
# download latest UI version, update the sha below in case you want some other version
2022-08-27 15:25:50 +00:00
RUN git clone https://github.com/hlky/stable-diffusion-webui.git && cd stable-diffusion-webui && \
2022-08-28 07:34:56 +00:00
git reset --hard 33890563d237889aca7cbc4f04ae42b885aee07e && \
2022-08-27 17:40:42 +00:00
cp -t /stable-diffusion/scripts/ txt2img.yaml webui.py webui.yaml webui_playground.py && \
2022-08-27 15:25:50 +00:00
cd / && rm -rf stable-diffusion-webui
2022-08-27 11:38:12 +00:00
2022-08-28 11:35:40 +00:00
# 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
2022-08-27 11:38:12 +00:00
WORKDIR /stable-diffusion
2022-08-27 17:40:42 +00:00
ENV TRANSFORMERS_CACHE=/cache/transformers TORCH_HOME=/cache/torch CLI_ARGS=""
2022-08-27 11:38:12 +00:00
EXPOSE 7860
2022-08-28 11:35:40 +00:00
CMD \
ln -sf /models/model.ckpt /stable-diffusion/models/ldm/stable-diffusion-v1/model.ckpt && \
2022-08-27 11:38:12 +00:00
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
2022-08-28 07:34:56 +00:00
python3 -u scripts/webui.py --outdir /output --save-metadata --ckpt /models/model.ckpt ${CLI_ARGS}