Spaces:
Runtime error
Runtime error
File size: 11,006 Bytes
17a16a3 5b856fd 17a16a3 9a6356b 17a16a3 aba19e6 17a16a3 aba19e6 17a16a3 9a6356b 17a16a3 aba19e6 17a16a3 aba19e6 17a16a3 bc562a6 aba19e6 17a16a3 aba19e6 17a16a3 e66157a 9a6356b 248df97 9a6356b 17a16a3 9a6356b 17a16a3 aba19e6 cd31a8c 9b6f6dd 9a6356b 17a16a3 9a6356b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 |
FROM nvidia/cuda:11.7.1-cudnn8-devel-ubuntu22.04
ENV DEBIAN_FRONTEND noninteractive
ENV PYTHONUNBUFFERED=1
ENV PIP_DISABLE_PIP_VERSION_CHECK=1
ENV PIP_NO_CACHE_DIR=1
# OS setup
RUN apt-get update -y \
&& apt-get upgrade -y \
&& apt-get install -y \
libgl1 \
libglib2.0-0 \
curl \
vim \
wget \
git \
git-lfs \
tzdata \
bash \
ca-certificates \
libreadline8 \
bzip2 \
psmisc \
procps \
netbase \
openssh-client \
libsqlite3-dev \
python3-pip \
python3-venv \
python-is-python3 \
build-essential \
libssl-dev \
libffi-dev \
aria2 \
\
&& pip3 install --upgrade pip \
\
&& git lfs install \
\
&& apt-get clean autoclean \
&& apt-get autoremove --yes \
&& rm -rf /var/lib/apt/lists/*
# OS timezone setting (UTC)
RUN echo "UTC" > /etc/timezone
ENV TZ=UTC
# Poetry for Python packages
RUN curl -sSL https://install.python-poetry.org | POETRY_HOME=/usr/local/poetry python3 - --yes \
&& ln -s /usr/local/poetry/bin/poetry /usr/bin/poetry \
\
&& poetry config virtualenvs.create false \
&& poetry config virtualenvs.in-project false
# Create non-root user
ENV ENV="/etc/profile"
RUN adduser --disabled-password --gecos '' user && \
mkdir -p /app && \
chown -R user:user /app && \
printf "\n. /etc/profile\n" >> /home/user/.profile \
printf "\n. /etc/profile\n" >> /home/user/.bashrc
# Sets up virtualenv for dependencies
ENV VIRTUAL_ENV="/opt/venv"
ENV VIRTUAL_ENV_DISABLE_PROMPT=1
ENV POETRY_ACTIVE=1
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
RUN echo "export PATH=$PATH" >> /home/user/.bashrc \
&& python3 -m venv $VIRTUAL_ENV \
&& /opt/venv/bin/pip install --upgrade --no-cache-dir pip \
&& chown -R user:user /opt/venv
# Run as non-root user
USER user
WORKDIR /app
# Installation of basic Python dependencies specified in pyproject.toml
COPY --chown=user:user pyproject.toml poetry.lock /app/
RUN poetry install
# AUTOMATIC1111' WebUI
RUN git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui /app/stable-diffusion-webui \
&& (cd /app/stable-diffusion-webui && git checkout 0cc0ee1bcb4c24a8c9715f66cede06601bfc00c8)
# Deforum extension
RUN git clone https://github.com/deforum-art/deforum-for-automatic1111-webui /app/stable-diffusion-webui/extensions/deforum-for-automatic1111-webui \
&& (cd /app/stable-diffusion-webui/extensions/deforum-for-automatic1111-webui && git checkout b60d999202f0fd2b386150d0938c43e639db8643)
# Images Browser WebUI extension
RUN git clone https://github.com/yfszzx/stable-diffusion-webui-images-browser /app/stable-diffusion-webui/extensions/stable-diffusion-webui-images-browser \
&& (cd /app/stable-diffusion-webui/extensions/stable-diffusion-webui-images-browser && git checkout a42c7a30181636a05815e62426d5eff4d3340529)
# Locon extension (Obsolete - Use Lycrois)
#RUN git clone https://github.com/KohakuBlueleaf/a1111-sd-webui-locon /app/stable-diffusion-webui/extensions/a1111-sd-webui-locon \
# && (cd /app/stable-diffusion-webui/extensions/a1111-sd-webui-locon && git checkout afe70b0f77f2d1cc691f297074cc049913711662)
# Lycoris extension
RUN git clone https://github.com/KohakuBlueleaf/a1111-sd-webui-lycoris /app/stable-diffusion-webui/extensions/a1111-sd-webui-lycoris \
&& (cd /app/stable-diffusion-webui/extensions/a1111-sd-webui-lycoris && git checkout b0d24ca645b6a5cb9752169691a1c6385c6fe6ae)
# Local Latent Upscaler extension
RUN git clone https://github.com/hnmr293/sd-webui-llul /app/stable-diffusion-webui/extensions/sd-webui-llul \
&& (cd /app/stable-diffusion-webui/extensions/sd-webui-llul && git checkout b20337ae1091ea65fdaf7108a2eaac13fed078d5)
# Aspect Ratios extension
RUN git clone https://github.com/alemelis/sd-webui-ar /app/stable-diffusion-webui/extensions/sd-webui-ar \
&& (cd /app/stable-diffusion-webui/extensions/sd-webui-ar && git checkout ce0a645ca2ad949573cacc7f5cd14ac13e83e2c9)
# Stable Hoarde extension
RUN git clone https://github.com/natanjunges/stable-diffusion-webui-stable-horde /app/stable-diffusion-webui/extensions/stable-diffusion-webui-stable-horde \
&& (cd /app/stable-diffusion-webui/extensions/stable-diffusion-webui-stable-horde && git checkout 00248b89bfab7ba465f104324a5d0708ad37341f)
# Smart Process extension
#RUN git clone https://github.com/d8ahazard/sd_smartprocess /app/stable-diffusion-webui/extensions/sd_smartprocess \
# && (cd /app/stable-diffusion-webui/extensions/sd_smartprocess && git checkout 41fb35ef712e01829f1d1ab53a78f6ec45cba1df)
# Panorama extension
RUN git clone https://github.com/GeorgLegato/sd-webui-panorama-viewer /app/stable-diffusion-webui/extensions/sd-webui-panorama-viewer \
&& (cd /app/stable-diffusion-webui/extensions/sd-webui-panorama-viewer && git checkout 6879f2e00f4e21abffe66cd2f35e1a50efc4aba8)
# Style Pile extension
RUN git clone https://github.com/some9000/StylePile /app/stable-diffusion-webui/extensions/StylePile \
&& (cd /app/stable-diffusion-webui/extensions/StylePile && git checkout 206b3d06bebb75df1a4b5439e35c432668ea7574)
# Anti Burn extension
RUN git clone https://github.com/klimaleksus/stable-diffusion-webui-anti-burn /app/stable-diffusion-webui/extensions/stable-diffusion-webui-anti-burn \
&& (cd /app/stable-diffusion-webui/extensions/stable-diffusion-webui-anti-burn && git checkout 4d678f1f1120415fe4cb9f77484252bc82af03b2)
# Super Merger extension
RUN git clone https://github.com/hako-mikan/sd-webui-supermerger /app/stable-diffusion-webui/extensions/sd-webui-supermerger \
&& (cd /app/stable-diffusion-webui/extensions/sd-webui-supermerger && git checkout ba775c8941b51f59785834db54ec947be3213626)
# Cutoff Extension
RUN git clone https://github.com/hnmr293/sd-webui-cutoff /app/stable-diffusion-webui/extensions/sd-webui-cutoff \
&& (cd /app/stable-diffusion-webui/extensions/sd-webui-cutoff && git checkout 3a073e9c4525c21b72ae4645125768457c9c98e1)
# Dynamic Prompts extension
RUN git clone https://github.com/adieyal/sd-dynamic-prompts /app/stable-diffusion-webui/extensions/sd-dynamic-prompts \
&& (cd /app/stable-diffusion-webui/extensions/sd-dynamic-prompts && git checkout 45b21373c00097546694aaee4f29b3d1514f76c3)
COPY wildcards/ /app/stable-diffusion-webui/sd-dynamic-prompts/wildcards/
# CiviTAI BETTER Browser WebUI extension
RUN git clone https://github.com/butaixianran/Stable-Diffusion-Webui-Civitai-Helper /app/stable-diffusion-webui/extensions/Stable-Diffusion-Webui-Civitai-Helper \
&& (cd /app/stable-diffusion-webui/extensions/Stable-Diffusion-Webui-Civitai-Helper && git checkout 920ca3267f789a72e3225c99f069bf0be0db795d)
# CiviTAI WebUI extension
RUN git clone https://github.com/civitai/sd_civitai_extension /app/stable-diffusion-webui/extensions/sd_civitai_extension \
&& (cd /app/stable-diffusion-webui/extensions/sd_civitai_extension && git checkout 7ab4e9f384221500e1873405b12ae965d241e048)
# Huggingface Push extension
RUN git clone https://github.com/camenduru/stable-diffusion-webui-huggingface /app/stable-diffusion-webui/extensions/stable-diffusion-webui-huggingface \
&& (cd /app/stable-diffusion-webui/extensions/stable-diffusion-webui-huggingface && git checkout 6e824a1aeff9982e6068ec369dbaceb79c21a05a)
# Booru Tag Autocomplete extension
RUN git clone https://github.com/DominikDoom/a1111-sd-webui-tagcomplete /app/stable-diffusion-webui/extensions/a1111-sd-webui-tagcomplete \
&& (cd /app/stable-diffusion-webui/extensions/a1111-sd-webui-tagcomplete && git checkout 1cb4fc8f2572545418fe988edd8815a20e6b0e28)
# Batchlinks Downloader extension
RUN git clone https://github.com/etherealxx/batchlinks-webui /app/stable-diffusion-webui/extensions/batchlinks-webui \
&& (cd /app/stable-diffusion-webui/extensions/batchlinks-webui && git checkout d44bbb5e2a043f2eed80c3945c0f2c676e41d0e5)
# Fast PNG Info extension
RUN git clone https://github.com/NoCrypt/sd-fast-pnginfo /app/stable-diffusion-webui/extensions/sd-fast-pnginfo \
&& (cd /app/stable-diffusion-webui/extensions/sd-fast-pnginfo && git checkout b6647cd57fd5930f4355dee253833a459d2b39fe)
# Filer extension
RUN git clone https://github.com/aka7774/sd_filer /app/stable-diffusion-webui/extensions/sd_filer \
&& (cd /app/stable-diffusion-webui/extensions/sd_filer && git checkout ff7d76930ced048a4e5e73ca964551d679463da7)
# Toolkit extension
RUN git clone https://github.com/arenasys/stable-diffusion-webui-model-toolkit /app/stable-diffusion-webui/extensions/stable-diffusion-webui-model-toolkit \
&& (cd /app/stable-diffusion-webui/extensions/stable-diffusion-webui-model-toolkit && git checkout 4d8fea77dba5643439691c1c6b003db4d330ff0b)
# Additional Networks WebUI extension
RUN git clone https://github.com/kohya-ss/sd-webui-additional-networks /app/stable-diffusion-webui/extensions/sd-webui-additional-networks \
&& (cd /app/stable-diffusion-webui/extensions/sd-webui-additional-networks && git checkout 86300421b0ff35ab9d670874e836b7f65b806430)
#&& mkdir -p /app/stable-diffusion-webui/extensions/sd-webui-additional-networks/models/LoRA
# ControlNet WebUI extension
RUN git clone https://github.com/Mikubill/sd-webui-controlnet /app/stable-diffusion-webui/extensions/sd-webui-controlnet \
&& (cd /app/stable-diffusion-webui/extensions/sd-webui-controlnet && git checkout e78d486ce0e5cb9adc52549370d71e0433bf2111) \
&& mkdir -p /app/stable-diffusion-webui/models/ControlNet
#Grab the Helper LoRas
RUN mkdir -p /app/stable-diffusion-webui/models/Lora && cd /app/stable-diffusion-webui/models/Lora \
&& (git clone https://huggingface.co/Xenos14/QoL-LoRas)
# Prepare WebUI environment
WORKDIR /app/stable-diffusion-webui
RUN /opt/venv/bin/python launch.py --exit --skip-torch-cuda-test --xformers
# Patch WebUI
RUN sed -i -e 's/ show_progress=False,/ show_progress=True,/g' modules/ui.py
RUN sed -i -e 's/shared.demo.launch/shared.demo.queue().launch/g' webui.py
RUN sed -i -e 's/ outputs=\[/queue=False, &/g' modules/ui.py
RUN sed -i -e 's/ queue=False, / /g' modules/ui.py
# Copy startup scripts
COPY --chown=user:user run.py on_start.sh config.json ui-config.json shared-config.json shared-ui-config.json header_patch.py /app/stable-diffusion-webui/
COPY embeddings/ /app/stable-diffusion-webui/embeddings/
COPY styles.csv /app/stable-diffusion-webui/
RUN chmod +x on_start.sh
EXPOSE 7860
CMD ["/opt/venv/bin/python", "run.py", "--listen", "--enable-insecure-extension-access", "--ui-config-file", "ui-config.json", "--ui-settings-file", "config.json", "--disable-console-progressbars", "--cors-allow-origins", "huggingface.co,hf.space", "--no-progressbar-hiding", "--enable-console-prompts", "--no-download-sd-model", "--api", "--skip-version-check", "--lora-dir", "/app/stable-diffusion-webui/models/Lora", "--embeddings-dir", "/app/stable-diffusion-webui/embeddings"]
|