mirror of
https://github.com/AbdBarho/stable-diffusion-webui-docker.git
synced 2025-10-29 09:14:25 -04:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
660c098da0 | ||
|
|
6695c23150 | ||
|
|
a3ecd4a79c | ||
|
|
1df18b803c |
@@ -18,7 +18,7 @@ This repository provides multiple UIs for you to play around with stable diffusi
|
|||||||
| ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
|
| ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
|
||||||
|  |  |  |
|
|  |  |  |
|
||||||
|
|
||||||
### [InvokeAI (lstein)](https://github.com/invoke-ai/InvokeAI)
|
### [InvokeAI](https://github.com/invoke-ai/InvokeAI)
|
||||||
|
|
||||||
[Full feature list here](https://github.com/invoke-ai/InvokeAI#features), Screenshots:
|
[Full feature list here](https://github.com/invoke-ai/InvokeAI#features), Screenshots:
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ x-base_service: &base_service
|
|||||||
devices:
|
devices:
|
||||||
- driver: nvidia
|
- driver: nvidia
|
||||||
device_ids: ['0']
|
device_ids: ['0']
|
||||||
capabilities: [gpu]
|
capabilities: [compute, utility]
|
||||||
|
|
||||||
name: webui-docker
|
name: webui-docker
|
||||||
|
|
||||||
@@ -28,7 +28,7 @@ services:
|
|||||||
<<: *base_service
|
<<: *base_service
|
||||||
profiles: ["auto"]
|
profiles: ["auto"]
|
||||||
build: ./services/AUTOMATIC1111
|
build: ./services/AUTOMATIC1111
|
||||||
image: sd-auto:56
|
image: sd-auto:58
|
||||||
environment:
|
environment:
|
||||||
- CLI_ARGS=--allow-code --medvram --xformers --enable-insecure-extension-access --api
|
- CLI_ARGS=--allow-code --medvram --xformers --enable-insecure-extension-access --api
|
||||||
|
|
||||||
@@ -43,7 +43,7 @@ services:
|
|||||||
<<: *base_service
|
<<: *base_service
|
||||||
profiles: ["invoke"]
|
profiles: ["invoke"]
|
||||||
build: ./services/invoke/
|
build: ./services/invoke/
|
||||||
image: sd-invoke:28
|
image: sd-invoke:29
|
||||||
environment:
|
environment:
|
||||||
- PRELOAD=true
|
- PRELOAD=true
|
||||||
- CLI_ARGS=--xformers
|
- CLI_ARGS=--xformers
|
||||||
|
|||||||
@@ -18,31 +18,37 @@ RUN . /clone.sh clip-interrogator https://github.com/pharmapsychotic/clip-interr
|
|||||||
|
|
||||||
FROM alpine:3.17 as xformers
|
FROM alpine:3.17 as xformers
|
||||||
RUN apk add --no-cache aria2
|
RUN apk add --no-cache aria2
|
||||||
RUN aria2c -x 5 --dir / --out wheel.whl 'https://github.com/AbdBarho/stable-diffusion-webui-docker/releases/download/5.0.3/xformers-0.0.20.dev528-cp310-cp310-manylinux2014_x86_64-pytorch2.whl'
|
RUN aria2c -x 5 --dir / --out wheel.whl 'https://github.com/AbdBarho/stable-diffusion-webui-docker/releases/download/6.0.0/xformers-0.0.21.dev544-cp310-cp310-manylinux2014_x86_64-pytorch201.whl'
|
||||||
|
|
||||||
|
|
||||||
FROM python:3.10.9-slim
|
FROM python:3.10.9-slim
|
||||||
|
|
||||||
ENV DEBIAN_FRONTEND=noninteractive PIP_PREFER_BINARY=1
|
ENV DEBIAN_FRONTEND=noninteractive PIP_PREFER_BINARY=1
|
||||||
|
|
||||||
RUN apt-get update && apt install fonts-dejavu-core rsync git jq moreutils aria2 -y && apt-get clean
|
RUN --mount=type=cache,target=/var/cache/apt \
|
||||||
|
apt-get update && \
|
||||||
|
# we need those
|
||||||
|
apt-get install -y fonts-dejavu-core rsync git jq moreutils aria2 \
|
||||||
|
# extensions needs those
|
||||||
|
ffmpeg libglfw3-dev libgles2-mesa-dev pkg-config libcairo2 libcairo2-dev
|
||||||
|
|
||||||
|
|
||||||
RUN --mount=type=cache,target=/cache --mount=type=cache,target=/root/.cache/pip \
|
RUN --mount=type=cache,target=/cache --mount=type=cache,target=/root/.cache/pip \
|
||||||
aria2c -x 5 --dir /cache --out torch-2.0.0-cp310-cp310-linux_x86_64.whl -c \
|
aria2c -x 5 --dir /cache --out torch-2.0.1-cp310-cp310-linux_x86_64.whl -c \
|
||||||
https://download.pytorch.org/whl/cu118/torch-2.0.0%2Bcu118-cp310-cp310-linux_x86_64.whl && \
|
https://download.pytorch.org/whl/cu118/torch-2.0.1%2Bcu118-cp310-cp310-linux_x86_64.whl && \
|
||||||
pip install /cache/torch-2.0.0-cp310-cp310-linux_x86_64.whl torchvision --index-url https://download.pytorch.org/whl/cu118
|
pip install /cache/torch-2.0.1-cp310-cp310-linux_x86_64.whl torchvision --index-url https://download.pytorch.org/whl/cu118
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
RUN --mount=type=cache,target=/root/.cache/pip \
|
RUN --mount=type=cache,target=/root/.cache/pip \
|
||||||
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git && \
|
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git && \
|
||||||
cd stable-diffusion-webui && \
|
cd stable-diffusion-webui && \
|
||||||
git reset --hard d7aec59c4eb02f723b3d55c6f927a42e97acd679 && \
|
git reset --hard 20ae71faa8ef035c31aa3a410b707d792c8203a3 && \
|
||||||
pip install -r requirements_versions.txt
|
pip install -r requirements_versions.txt
|
||||||
|
|
||||||
RUN --mount=type=cache,target=/root/.cache/pip \
|
RUN --mount=type=cache,target=/root/.cache/pip \
|
||||||
--mount=type=bind,from=xformers,source=/wheel.whl,target=/xformers-0.0.20.dev528-cp310-cp310-manylinux2014_x86_64.whl \
|
--mount=type=bind,from=xformers,source=/wheel.whl,target=/xformers-0.0.21.dev544-cp310-cp310-manylinux2014_x86_64.whl \
|
||||||
pip install /xformers-0.0.20.dev528-cp310-cp310-manylinux2014_x86_64.whl
|
pip install /xformers-0.0.21.dev544-cp310-cp310-manylinux2014_x86_64.whl
|
||||||
|
|
||||||
ENV ROOT=/stable-diffusion-webui
|
ENV ROOT=/stable-diffusion-webui
|
||||||
|
|
||||||
@@ -65,15 +71,13 @@ RUN --mount=type=cache,target=/root/.cache/pip \
|
|||||||
RUN apt-get -y install libgoogle-perftools-dev && apt-get clean
|
RUN apt-get -y install libgoogle-perftools-dev && apt-get clean
|
||||||
ENV LD_PRELOAD=libtcmalloc.so
|
ENV LD_PRELOAD=libtcmalloc.so
|
||||||
|
|
||||||
ARG SHA=89f9faa63388756314e8a1d96cf86bf5e0663045
|
ARG SHA=20ae71faa8ef035c31aa3a410b707d792c8203a3
|
||||||
RUN --mount=type=cache,target=/root/.cache/pip \
|
RUN --mount=type=cache,target=/root/.cache/pip \
|
||||||
cd stable-diffusion-webui && \
|
cd stable-diffusion-webui && \
|
||||||
git fetch && \
|
git fetch && \
|
||||||
git reset --hard ${SHA} && \
|
git reset --hard ${SHA} && \
|
||||||
pip install -r requirements_versions.txt
|
pip install -r requirements_versions.txt
|
||||||
|
|
||||||
RUN --mount=type=cache,target=/root/.cache/pip pip install -U opencv-python-headless
|
|
||||||
|
|
||||||
COPY . /docker
|
COPY . /docker
|
||||||
|
|
||||||
RUN \
|
RUN \
|
||||||
@@ -84,7 +88,6 @@ RUN \
|
|||||||
git config --global --add safe.directory '*'
|
git config --global --add safe.directory '*'
|
||||||
|
|
||||||
WORKDIR ${ROOT}
|
WORKDIR ${ROOT}
|
||||||
ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility
|
|
||||||
ENV NVIDIA_VISIBLE_DEVICES=all
|
ENV NVIDIA_VISIBLE_DEVICES=all
|
||||||
ENV CLI_ARGS=""
|
ENV CLI_ARGS=""
|
||||||
EXPOSE 7860
|
EXPOSE 7860
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ MOUNTS["${ROOT}/config.json"]="/data/config/auto/config.json"
|
|||||||
MOUNTS["${ROOT}/ui-config.json"]="/data/config/auto/ui-config.json"
|
MOUNTS["${ROOT}/ui-config.json"]="/data/config/auto/ui-config.json"
|
||||||
MOUNTS["${ROOT}/styles.csv"]="/data/config/auto/styles.csv"
|
MOUNTS["${ROOT}/styles.csv"]="/data/config/auto/styles.csv"
|
||||||
MOUNTS["${ROOT}/extensions"]="/data/config/auto/extensions"
|
MOUNTS["${ROOT}/extensions"]="/data/config/auto/extensions"
|
||||||
|
MOUNTS["${ROOT}/config_states"]="/data/config/auto/config_states"
|
||||||
|
|
||||||
# extra hacks
|
# extra hacks
|
||||||
MOUNTS["${ROOT}/repositories/CodeFormer/weights/facelib"]="/data/.cache"
|
MOUNTS["${ROOT}/repositories/CodeFormer/weights/facelib"]="/data/.cache"
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ RUN --mount=type=cache,target=/root/.cache/pip \
|
|||||||
COPY . /docker/
|
COPY . /docker/
|
||||||
RUN cp /docker/extra_model_paths.yaml ${ROOT}
|
RUN cp /docker/extra_model_paths.yaml ${ROOT}
|
||||||
|
|
||||||
ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility NVIDIA_VISIBLE_DEVICES=all
|
ENV NVIDIA_VISIBLE_DEVICES=all
|
||||||
ENV PYTHONPATH="${PYTHONPATH}:${PWD}" CLI_ARGS=""
|
ENV PYTHONPATH="${PYTHONPATH}:${PWD}" CLI_ARGS=""
|
||||||
EXPOSE 7860
|
EXPOSE 7860
|
||||||
ENTRYPOINT ["/docker/entrypoint.sh"]
|
ENTRYPOINT ["/docker/entrypoint.sh"]
|
||||||
|
|||||||
@@ -1,16 +1,11 @@
|
|||||||
FROM alpine:3.17 as xformers
|
FROM alpine:3.17 as xformers
|
||||||
RUN apk add --no-cache aria2
|
RUN apk add --no-cache aria2
|
||||||
RUN aria2c -x 5 --dir / --out wheel.whl 'https://github.com/AbdBarho/stable-diffusion-webui-docker/releases/download/5.0.3/xformers-0.0.20.dev528-cp310-cp310-manylinux2014_x86_64-pytorch1.13.whl'
|
RUN aria2c -x 5 --dir / --out wheel.whl 'https://github.com/AbdBarho/stable-diffusion-webui-docker/releases/download/6.0.0/xformers-0.0.21.dev544-cp310-cp310-manylinux2014_x86_64-pytorch201.whl'
|
||||||
|
|
||||||
|
|
||||||
|
FROM pytorch/pytorch:2.0.1-cuda11.7-cudnn8-runtime
|
||||||
|
|
||||||
FROM python:3.10-slim
|
ENV DEBIAN_FRONTEND=noninteractive PIP_EXISTS_ACTION=w PIP_PREFER_BINARY=1
|
||||||
|
|
||||||
ENV DEBIAN_FRONTEND=noninteractive PIP_EXISTS_ACTION=w PIP_PREFER_BINARY=1
|
|
||||||
|
|
||||||
|
|
||||||
RUN --mount=type=cache,target=/root/.cache/pip pip install torch==1.13.1+cu117 torchvision --extra-index-url https://download.pytorch.org/whl/cu117
|
|
||||||
|
|
||||||
|
|
||||||
# patch match:
|
# patch match:
|
||||||
# https://github.com/invoke-ai/InvokeAI/blob/main/docs/installation/INSTALL_PATCHMATCH.md
|
# https://github.com/invoke-ai/InvokeAI/blob/main/docs/installation/INSTALL_PATCHMATCH.md
|
||||||
@@ -27,11 +22,11 @@ RUN git clone https://github.com/invoke-ai/InvokeAI.git ${ROOT}
|
|||||||
WORKDIR ${ROOT}
|
WORKDIR ${ROOT}
|
||||||
|
|
||||||
RUN --mount=type=cache,target=/root/.cache/pip \
|
RUN --mount=type=cache,target=/root/.cache/pip \
|
||||||
git reset --hard 4463124bddd221c333d4c70e73aa2949ad35453d && \
|
git reset --hard f3b2e02921927d9317255b1c3811f47bd40a2bf9 && \
|
||||||
pip install -e .
|
pip install -e .
|
||||||
|
|
||||||
|
|
||||||
ARG BRANCH=main SHA=d73f1c363c3f2fe00f14ed34e276b4366b32a886
|
ARG BRANCH=main SHA=f3b2e02921927d9317255b1c3811f47bd40a2bf9
|
||||||
RUN --mount=type=cache,target=/root/.cache/pip \
|
RUN --mount=type=cache,target=/root/.cache/pip \
|
||||||
git fetch && \
|
git fetch && \
|
||||||
git reset --hard && \
|
git reset --hard && \
|
||||||
@@ -40,14 +35,13 @@ RUN --mount=type=cache,target=/root/.cache/pip \
|
|||||||
pip install -U -e .
|
pip install -U -e .
|
||||||
|
|
||||||
RUN --mount=type=cache,target=/root/.cache/pip \
|
RUN --mount=type=cache,target=/root/.cache/pip \
|
||||||
--mount=type=bind,from=xformers,source=/wheel.whl,target=/xformers-0.0.20-cp310-cp310-linux_x86_64.whl \
|
--mount=type=bind,from=xformers,source=/wheel.whl,target=/xformers-0.0.21-cp310-cp310-linux_x86_64.whl \
|
||||||
pip install -U opencv-python-headless triton /xformers-0.0.20-cp310-cp310-linux_x86_64.whl && \
|
pip install -U opencv-python-headless triton /xformers-0.0.21-cp310-cp310-linux_x86_64.whl && \
|
||||||
python3 -c "from patchmatch import patch_match"
|
python3 -c "from patchmatch import patch_match"
|
||||||
|
|
||||||
|
|
||||||
COPY . /docker/
|
COPY . /docker/
|
||||||
|
|
||||||
ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility
|
|
||||||
ENV NVIDIA_VISIBLE_DEVICES=all
|
ENV NVIDIA_VISIBLE_DEVICES=all
|
||||||
ENV PYTHONUNBUFFERED=1 PRELOAD=false HF_HOME=/root/.cache/huggingface CONFIG_DIR=/data/config/invoke CLI_ARGS=""
|
ENV PYTHONUNBUFFERED=1 PRELOAD=false HF_HOME=/root/.cache/huggingface CONFIG_DIR=/data/config/invoke CLI_ARGS=""
|
||||||
EXPOSE 7860
|
EXPOSE 7860
|
||||||
|
|||||||
Reference in New Issue
Block a user