Update versions (#120)
- auto:2995107fa2
- More samplers - Textual inversion training - hlky:1a9c053cb7
- Build times are SLOW - lstein:4f247a3672
- Prepare for 2.0 release - very cool new UI!
This commit is contained in:
parent
e1e03229fd
commit
710280c7ab
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,4 +1,2 @@
|
|||||||
/dev
|
|
||||||
/.devcontainer
|
/.devcontainer
|
||||||
embeddings/*
|
|
||||||
/docker-compose.override.yml
|
/docker-compose.override.yml
|
||||||
|
@ -17,7 +17,7 @@ git reset --hard 24268930bf1dce879235a7fddd0b2355b84d7ea6
|
|||||||
rm -rf repositories/taming-transformers/data repositories/taming-transformers/assets
|
rm -rf repositories/taming-transformers/data repositories/taming-transformers/assets
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
RUN git clone https://github.com/crowsonkb/k-diffusion.git repositories/k-diffusion && cd repositories/k-diffusion && git reset --hard 9e3002b7cd64df7870e08527b7664eb2f2f5f3f5
|
RUN git clone https://github.com/crowsonkb/k-diffusion.git repositories/k-diffusion && cd repositories/k-diffusion && git reset --hard f4e99857772fc3a126ba886aadf795a332774878
|
||||||
|
|
||||||
|
|
||||||
FROM continuumio/miniconda3:4.12.0
|
FROM continuumio/miniconda3:4.12.0
|
||||||
@ -49,7 +49,7 @@ RUN pip install --prefer-binary --no-cache-dir -r ${ROOT}/repositories/CodeForme
|
|||||||
# Note: don't update the sha of previous versions because the install will take forever
|
# Note: don't update the sha of previous versions because the install will take forever
|
||||||
# instead, update the repo state in a later step
|
# instead, update the repo state in a later step
|
||||||
|
|
||||||
ARG SHA=1eb588cbf19924333b88beaa1ac0041904966640
|
ARG SHA=2995107fa24cfd72b0a991e18271dcde148c2807
|
||||||
RUN <<EOF
|
RUN <<EOF
|
||||||
cd stable-diffusion-webui
|
cd stable-diffusion-webui
|
||||||
git pull --rebase
|
git pull --rebase
|
||||||
@ -75,4 +75,3 @@ EXPOSE 7860
|
|||||||
# run, -u to not buffer stdout / stderr
|
# run, -u to not buffer stdout / stderr
|
||||||
CMD /docker/mount.sh && \
|
CMD /docker/mount.sh && \
|
||||||
python3 -u ../../webui.py --listen --port 7860 --hide-ui-dir-config --ckpt-dir ${ROOT}/models/Stable-diffusion ${CLI_ARGS}
|
python3 -u ../../webui.py --listen --port 7860 --hide-ui-dir-config --ckpt-dir ${ROOT}/models/Stable-diffusion ${CLI_ARGS}
|
||||||
# --gfpgan-models-path /data/GFPGAN --codeformer-models-path /data/Codeformer --esrgan-models-path /data/ESRGAN --bsrgan-models-path /data/BSRGAN --realesrgan-models-path /data/RealESRGAN --swinir-models-path /data/SwinIR --ldsr-models-path /data/LDSR
|
|
||||||
|
@ -16,7 +16,7 @@ RUN <<EOF
|
|||||||
git config --global http.postBuffer 1048576000
|
git config --global http.postBuffer 1048576000
|
||||||
git clone https://github.com/sd-webui/stable-diffusion-webui.git stable-diffusion
|
git clone https://github.com/sd-webui/stable-diffusion-webui.git stable-diffusion
|
||||||
cd stable-diffusion
|
cd stable-diffusion
|
||||||
git reset --hard 7623a5734740025d79b710f3744bff9276e1467b
|
git reset --hard 1a9c053cb7b6832695771db2555c0adc9b41e95f
|
||||||
conda env update --file environment.yaml -n base
|
conda env update --file environment.yaml -n base
|
||||||
conda clean -a -y
|
conda clean -a -y
|
||||||
EOF
|
EOF
|
||||||
@ -24,8 +24,8 @@ EOF
|
|||||||
|
|
||||||
# Note: don't update the sha of previous versions because the install will take forever
|
# Note: don't update the sha of previous versions because the install will take forever
|
||||||
# instead, update the repo state in a later step
|
# instead, update the repo state in a later step
|
||||||
# ARG BRANCH=master SHA=d0bb60a139d60e6c2b9be4e18e0e29a86aa5af59
|
ARG BRANCH=master SHA=1a9c053cb7b6832695771db2555c0adc9b41e95f
|
||||||
ARG BRANCH=dev SHA=1e7bdfe3f38a6dd37fc230f440ea1b0db0937240
|
# ARG BRANCH=dev SHA=1e7bdfe3f38a6dd37fc230f440ea1b0db0937240
|
||||||
RUN <<EOF
|
RUN <<EOF
|
||||||
cd stable-diffusion
|
cd stable-diffusion
|
||||||
git fetch
|
git fetch
|
||||||
|
@ -9,11 +9,14 @@ ROOT=/stable-diffusion/src
|
|||||||
# cache
|
# cache
|
||||||
MOUNTS["/root/.cache"]=/data/.cache
|
MOUNTS["/root/.cache"]=/data/.cache
|
||||||
# ui specific
|
# ui specific
|
||||||
MOUNTS["${ROOT}/gfpgan/experiments/pretrained_models/GFPGANv1.3.pth"]=/data/GFPGAN/GFPGANv1.4.pth
|
MOUNTS["${PWD}/models/realesrgan"]=/data/RealESRGAN
|
||||||
MOUNTS["${ROOT}/realesrgan/experiments/pretrained_models"]=/data/RealESRGAN
|
MOUNTS["${PWD}/models/ldsr"]=/data/LDSR
|
||||||
MOUNTS["${ROOT}/latent-diffusion/experiments/pretrained_models"]=/data/LDSR
|
MOUNTS["${PWD}/models/custom"]=/data/StableDiffusion
|
||||||
# hacks
|
|
||||||
MOUNTS["/stable-diffusion/gfpgan/weights"]=/data/.cache
|
# hack
|
||||||
|
MOUNTS["${PWD}/models/gfpgan/GFPGANv1.3.pth"]=/data/GFPGAN/GFPGANv1.4.pth
|
||||||
|
MOUNTS["${PWD}/models/gfpgan/GFPGANv1.4.pth"]=/data/GFPGAN/GFPGANv1.4.pth
|
||||||
|
|
||||||
|
|
||||||
for to_path in "${!MOUNTS[@]}"; do
|
for to_path in "${!MOUNTS[@]}"; do
|
||||||
set -Eeuo pipefail
|
set -Eeuo pipefail
|
||||||
|
@ -12,21 +12,20 @@ RUN conda install pytorch==1.11.0 torchvision==0.12.0 cudatoolkit=11.3 -c pytorc
|
|||||||
|
|
||||||
RUN apt-get update && apt install fonts-dejavu-core rsync gcc -y && apt-get clean
|
RUN apt-get update && apt install fonts-dejavu-core rsync gcc -y && apt-get clean
|
||||||
|
|
||||||
|
ENV PIP_EXISTS_ACTION=w
|
||||||
|
|
||||||
RUN <<EOF
|
RUN <<EOF
|
||||||
git clone https://github.com/invoke-ai/InvokeAI.git stable-diffusion
|
git clone https://github.com/invoke-ai/InvokeAI.git stable-diffusion
|
||||||
cd stable-diffusion
|
cd stable-diffusion
|
||||||
git reset --hard a1739a73b48bfe98b6abcb67f5a0197a9ad270e0
|
git reset --hard 8a8be92eac17e0ef699528157596b2336bdee532
|
||||||
sed -i -- 's/python=3.8.5/python=3.9/g' environment.yaml
|
sed -i -- 's/python=3.8.5/python=3.9/g' environment.yaml
|
||||||
|
git config --global http.postBuffer 1048576000
|
||||||
conda env update --file environment.yaml -n base
|
conda env update --file environment.yaml -n base
|
||||||
conda clean -a -y
|
conda clean -a -y
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
|
||||||
ARG BRANCH=development SHA=8c9f2ae705cf723d4a8a73c416e8d8bf2d746977
|
ARG BRANCH=development SHA=4f247a3672474bd9c46060bab6087dbf9e2531f3
|
||||||
# this breaks on generation:
|
|
||||||
# there is a new UI anyway, but it is not by any means ready.
|
|
||||||
# ARG BRANCH=development SHA=bdbc76fcd4bd3362312dc91b087d9af66de423b1
|
|
||||||
RUN <<EOF
|
RUN <<EOF
|
||||||
cd stable-diffusion
|
cd stable-diffusion
|
||||||
git fetch
|
git fetch
|
||||||
@ -41,19 +40,18 @@ RUN pip uninstall opencv-python -y && pip install --prefer-binary --force-reinst
|
|||||||
|
|
||||||
COPY . /docker/
|
COPY . /docker/
|
||||||
RUN <<EOF
|
RUN <<EOF
|
||||||
python3 /docker/info.py /stable-diffusion/static/dream_web/index.html
|
python3 /docker/info.py /stable-diffusion/frontend/dist/index.html
|
||||||
chmod +x /docker/mount.sh
|
chmod +x /docker/mount.sh
|
||||||
sed -i -- 's/outputs\//\/output/g' /stable-diffusion/backend/server.py
|
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
|
||||||
ENV TRANSFORMERS_CACHE=/cache/transformers TORCH_HOME=/cache/torch PRELOAD=false CLI_ARGS=""
|
ENV PRELOAD=false CLI_ARGS=""
|
||||||
WORKDIR /stable-diffusion
|
WORKDIR /stable-diffusion
|
||||||
EXPOSE 7860
|
EXPOSE 7860
|
||||||
|
|
||||||
CMD /docker/mount.sh && \
|
CMD /docker/mount.sh && \
|
||||||
# python3 -u backend/server.py --host 0.0.0.0 --port 7860 --cors http://localhost:7860
|
# python3 -u backend/server.py --host 0.0.0.0 --port 7860 --cors http://localhost:7860
|
||||||
# python3 -u scripts/dream.py --outdir /output --web --host 0.0.0.0 --port 7860 ${CLI_ARGS}
|
python3 -u scripts/dream.py --outdir /output --web --host 0.0.0.0 --port 7860 ${CLI_ARGS}
|
||||||
echo The lstein webUI is currently deactivated due to implementation limitations: \
|
# echo The lstein webUI is currently deactivated due to implementation limitations: \
|
||||||
https://github.com/invoke-ai/InvokeAI/blob/8c9f2ae705cf723d4a8a73c416e8d8bf2d746977/backend/modules/create_cmd_parser.py#L26 \
|
# https://github.com/invoke-ai/InvokeAI/blob/8c9f2ae705cf723d4a8a73c416e8d8bf2d746977/backend/modules/create_cmd_parser.py#L26 \
|
||||||
Once the path the output is fixed, the UI will be activated again
|
# Once the path the output is fixed, the UI will be activated again
|
||||||
|
@ -4,7 +4,10 @@ from pathlib import Path
|
|||||||
file = Path(sys.argv[1])
|
file = Path(sys.argv[1])
|
||||||
file.write_text(
|
file.write_text(
|
||||||
file.read_text()\
|
file.read_text()\
|
||||||
.replace('GitHub site</a>', """
|
.replace(' <div id="root"></div>', """
|
||||||
GitHub site</a>, Deployed with <a href="https://github.com/AbdBarho/stable-diffusion-webui-docker/">stable-diffusion-webui-docker</a>
|
<div id="root"></div>
|
||||||
|
<div>
|
||||||
|
Deployed with <a href="https://github.com/AbdBarho/stable-diffusion-webui-docker/">stable-diffusion-webui-docker</a>
|
||||||
|
</div>
|
||||||
""", 1)
|
""", 1)
|
||||||
)
|
)
|
||||||
|
@ -1,28 +1,27 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
set -eu
|
set -Eeuo pipefail
|
||||||
|
|
||||||
ROOT=/stable-diffusion
|
declare -A MOUNTS
|
||||||
|
|
||||||
mkdir -p "${ROOT}/models/ldm/stable-diffusion-v1/"
|
# cache
|
||||||
ln -sf /cache/models/model.ckpt "${ROOT}/models/ldm/stable-diffusion-v1/model.ckpt"
|
MOUNTS["/root/.cache"]=/data/.cache
|
||||||
|
# ui specific
|
||||||
|
MOUNTS["${PWD}/models/ldm/stable-diffusion-v1/model.ckpt"]=/data/StableDiffusion/model.ckpt
|
||||||
|
MOUNTS["${PWD}/src/gfpgan/experiments/pretrained_models/GFPGANv1.4.pth"]=/data/GFPGAN/GFPGANv1.4.pth
|
||||||
|
MOUNTS["${PWD}/ldm/dream/restoration/codeformer/weights"]=/data/CodeFormer
|
||||||
|
# hacks
|
||||||
|
MOUNTS["/opt/conda/lib/python3.9/site-packages/facexlib/weights"]=/data/.cache
|
||||||
|
MOUNTS["/opt/conda/lib/python3.9/site-packages/realesrgan/weights"]=/data/RealESRGAN
|
||||||
|
|
||||||
base="${ROOT}/src/gfpgan/experiments/pretrained_models/"
|
for to_path in "${!MOUNTS[@]}"; do
|
||||||
mkdir -p "${base}"
|
set -Eeuo pipefail
|
||||||
# TODO: "real" GFPGANv1.4.pth
|
from_path="${MOUNTS[${to_path}]}"
|
||||||
ln -sf /cache/models/GFPGANv1.3.pth "${base}/GFPGANv1.4.pth"
|
rm -rf "${to_path}"
|
||||||
echo "Mounted GFPGANv1.3.pth"
|
mkdir -p "$(dirname "${to_path}")"
|
||||||
|
ln -sT "${from_path}" "${to_path}"
|
||||||
# facexlib
|
echo Mounted $(basename "${from_path}")
|
||||||
FACEX_WEIGHTS=/opt/conda/lib/python3.9/site-packages/facexlib/weights
|
done
|
||||||
|
|
||||||
rm -rf "${FACEX_WEIGHTS}"
|
|
||||||
mkdir -p /cache/weights
|
|
||||||
ln -sf -T /cache/weights "${FACEX_WEIGHTS}"
|
|
||||||
|
|
||||||
REALESRGAN_WEIGHTS=/opt/conda/lib/python3.9/site-packages/realesrgan/weights
|
|
||||||
rm -rf "${REALESRGAN_WEIGHTS}"
|
|
||||||
ln -sf -T /cache/weights "${REALESRGAN_WEIGHTS}"
|
|
||||||
|
|
||||||
if "${PRELOAD}" == "true"; then
|
if "${PRELOAD}" == "true"; then
|
||||||
python3 -u scripts/preload_models.py
|
python3 -u scripts/preload_models.py
|
||||||
|
Loading…
Reference in New Issue
Block a user