Spaces:
Runtime error
Runtime error
File size: 3,568 Bytes
ad32c0c 01864b9 ad32c0c d02116d ad32c0c 01864b9 ad32c0c 01864b9 ece2dd3 5f6a4fa ece2dd3 ad32c0c 78ef80b ad32c0c 01864b9 ad32c0c d02116d ad32c0c 01864b9 ad32c0c 7126efe ad32c0c 0f0ba30 ad32c0c 01864b9 ad32c0c 01864b9 7c9dec7 01864b9 ad32c0c |
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 |
# Use a smaller base image if possible, but maintain CUDA compatibility
FROM nvidia/cuda:11.7.1-base-ubuntu22.04 AS base
ENV DEBIAN_FRONTEND=noninteractive
# Create user and directories early to leverage caching
RUN adduser --disabled-password --gecos '' user && \
mkdir -p /content && \
chown -R user:user /content
# Install system dependencies efficiently
RUN apt-get update && \
apt-get install -y --no-install-recommends \
libgl1 libglib2.0-0 wget git git-lfs python3-pip python-is-python3 && \
rm -rf /var/lib/apt/lists/*
# Switch to user after system setup
WORKDIR /content
USER user
# Combine pip installations into a single layer
RUN pip3 install --upgrade pip==23.3.1 && \
pip install --no-cache-dir \
torchmetrics==0.11.4 \
numexpr \
httpx==0.24.1 \
pytorch_lightning==1.7.6 \
https://github.com/camenduru/stable-diffusion-webui-colab/releases/download/0.0.16/xformers-0.0.16+814314d.d20230119.A10G-cp310-cp310-linux_x86_64.whl \
--pre triton
# Clone repository and apply patches in a single step
RUN rm -rf stable-diffusion-webui && \
git clone -b v1.6 https://github.com/camenduru/stable-diffusion-webui && \
cd stable-diffusion-webui && \
sed -i 's/dict()))/dict())).cuda()/g' repositories/stable-diffusion-stability-ai/ldm/util.py && \
sed -i '/prepare_environment()/a os.system("sed -i -e '\''s/dict()))/dict())).cuda()/g'\'' repositories/stable-diffusion-stability-ai/ldm/util.py")' launch.py && \
sed -i 's/start()/#start()/g' launch.py && \
echo "fastapi==0.90.0" >> requirements_versions.txt && \
python launch.py --skip-torch-cuda-test
# Apply configuration patches
ADD --chown=user https://github.com/camenduru/webui-docker/raw/main/env_patch.py /content/
ADD --chown=user https://raw.githubusercontent.com/darkstorm2150/webui/refs/heads/main/OpenGen_header_patch.py /content/
RUN sed -i '/import image_from_url_text/r /content/env_patch.py' stable-diffusion-webui/modules/ui.py && \
sed -i '/demo:/r /content/header_patch.py' stable-diffusion-webui/modules/ui.py
# Cleanup and optimizations
RUN rm -rf stable-diffusion-webui/scripts && \
sed -i -e '/(modelmerger_interface, "Checkpoint Merger", "modelmerger"),/d' \
-e '/(train_interface, "Train", "ti"),/d' \
-e '/extensions_interface, "Extensions", "extensions"/d' \
-e '/settings_interface, "Settings", "settings"/d' \
-e 's/document.getElementsByTagName.*shadowRoot/!!& ? & : document/g' stable-diffusion-webui/script.js && \
sed -i 's/show_progress=False/show_progress=True/g' stable-diffusion-webui/modules/ui.py && \
sed -i 's/default_enabled=False/default_enabled=True/g' stable-diffusion-webui/webui.py && \
sed -i 's/ outputs=\[/queue=False, &/g' stable-diffusion-webui/modules/ui.py && \
sed -i 's/queue=False, //g' stable-diffusion-webui/modules/ui.py
# Add configuration files
ADD --chown=user https://github.com/camenduru/webui-docker/raw/main/shared-config.json /content/
ADD --chown=user https://github.com/camenduru/webui-docker/raw/main/shared-ui-config.json /content/
# Add Model
ADD --chown=user https://huggingface.co/darkstorm2150/OpenGen/resolve/main/OpenGen%20v1.0.safetensors /content/stable-diffusion-webui/models/Stable-diffusion/OpenGen%20v1.0.safetensors
EXPOSE 7860
CMD ["python", "webui.py", "--xformers", "--listen", "--disable-console-progressbars", "--enable-console-prompts", "--no-progressbar-hiding", "--ui-config-file", "/content/shared-ui-config.json", "--ui-settings-file", "/content/shared-config.json"] |