From 7b8bc3d74ae33978e78324a6e00499d755db1902 Mon Sep 17 00:00:00 2001 From: AbdBarho Date: Thu, 4 May 2023 06:55:01 +0200 Subject: [PATCH 1/8] LyCORIS - ModelScope (#439) Follow up to #401 Closes #401 Closes #437 --------- Co-authored-by: svupper <56261963+svupper@users.noreply.github.com> Co-authored-by: Ubuntu --- data/.gitignore | 2 ++ docker-compose.yml | 2 +- services/AUTOMATIC1111/entrypoint.sh | 2 ++ services/download/download.sh | 2 +- 4 files changed, 6 insertions(+), 2 deletions(-) diff --git a/data/.gitignore b/data/.gitignore index 5194313..9649426 100644 --- a/data/.gitignore +++ b/data/.gitignore @@ -22,3 +22,5 @@ /Lora /ControlNet /openpose +/ModelScope +/LyCORIS diff --git a/docker-compose.yml b/docker-compose.yml index fd89410..a577202 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -28,7 +28,7 @@ services: <<: *base_service profiles: ["auto"] build: ./services/AUTOMATIC1111 - image: sd-auto:51 + image: sd-auto:52 environment: - CLI_ARGS=--allow-code --medvram --xformers --enable-insecure-extension-access --api diff --git a/services/AUTOMATIC1111/entrypoint.sh b/services/AUTOMATIC1111/entrypoint.sh index c6df995..dd96248 100755 --- a/services/AUTOMATIC1111/entrypoint.sh +++ b/services/AUTOMATIC1111/entrypoint.sh @@ -35,8 +35,10 @@ MOUNTS["${ROOT}/models/torch_deepdanbooru"]="/data/Deepdanbooru" MOUNTS["${ROOT}/models/BLIP"]="/data/BLIP" MOUNTS["${ROOT}/models/midas"]="/data/MiDaS" MOUNTS["${ROOT}/models/Lora"]="/data/Lora" +MOUNTS["${ROOT}/models/LyCORIS"]="/data/LyCORIS" MOUNTS["${ROOT}/models/ControlNet"]="/data/ControlNet" MOUNTS["${ROOT}/models/openpose"]="/data/openpose" +MOUNTS["${ROOT}/models/ModelScope"]="/data/ModelScope" MOUNTS["${ROOT}/embeddings"]="/data/embeddings" MOUNTS["${ROOT}/config.json"]="/data/config/auto/config.json" diff --git a/services/download/download.sh b/services/download/download.sh index 54176d0..91e39d9 100755 --- a/services/download/download.sh +++ b/services/download/download.sh @@ -3,7 +3,7 @@ set -Eeuo pipefail # TODO: maybe just use the .gitignore file to create all of these -mkdir -vp /data/.cache /data/StableDiffusion /data/Codeformer /data/GFPGAN /data/ESRGAN /data/BSRGAN /data/RealESRGAN /data/SwinIR /data/LDSR /data/ScuNET /data/embeddings /data/VAE /data/Deepdanbooru /data/MiDaS /data/Lora /data/ControlNet /data/openpose +mkdir -vp /data/.cache /data/StableDiffusion /data/LyCORIS /data/Codeformer /data/ModelScope /data/GFPGAN /data/ESRGAN /data/BSRGAN /data/RealESRGAN /data/SwinIR /data/LDSR /data/ScuNET /data/embeddings /data/VAE /data/Deepdanbooru /data/MiDaS /data/Lora /data/ControlNet /data/openpose echo "Downloading, this might take a while..." From 56b942237e93c113702598e90fe4058c869a220a Mon Sep 17 00:00:00 2001 From: AbdBarho Date: Thu, 4 May 2023 07:29:49 +0200 Subject: [PATCH 2/8] Update Auto (#379) Last version before pytorch 2 https://github.com/AUTOMATIC1111/stable-diffusion-webui/commit/5ab7f213bec2f816f9c5644becb32eb72c8ffb89 --- docker-compose.yml | 2 +- services/AUTOMATIC1111/Dockerfile | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index a577202..2853c5c 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -28,7 +28,7 @@ services: <<: *base_service profiles: ["auto"] build: ./services/AUTOMATIC1111 - image: sd-auto:52 + image: sd-auto:53 environment: - CLI_ARGS=--allow-code --medvram --xformers --enable-insecure-extension-access --api diff --git a/services/AUTOMATIC1111/Dockerfile b/services/AUTOMATIC1111/Dockerfile index a610d0c..19adbef 100644 --- a/services/AUTOMATIC1111/Dockerfile +++ b/services/AUTOMATIC1111/Dockerfile @@ -24,8 +24,9 @@ FROM python:3.10.9-slim ENV DEBIAN_FRONTEND=noninteractive 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 +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 + +# RUN --mount=type=cache,target=/root/.cache/pip pip install torch==2.0.0+cu118 torchvision --extra-index-url https://download.pytorch.org/whl/cu117 RUN apt-get update && apt install fonts-dejavu-core rsync git jq moreutils -y && apt-get clean @@ -61,7 +62,7 @@ RUN --mount=type=cache,target=/root/.cache/pip \ RUN apt-get -y install libgoogle-perftools-dev && apt-get clean ENV LD_PRELOAD=libtcmalloc.so -ARG SHA=a9fed7c364061ae6efb37f797b6b522cb3cf7aa2 +ARG SHA=5ab7f213bec2f816f9c5644becb32eb72c8ffb89 RUN --mount=type=cache,target=/root/.cache/pip \ cd stable-diffusion-webui && \ git fetch && \ @@ -76,7 +77,8 @@ RUN \ python3 /docker/info.py ${ROOT}/modules/ui.py && \ mv ${ROOT}/style.css ${ROOT}/user.css && \ # one of the ugliest hacks I ever wrote \ - sed -i 's/in_app_dir = .*/in_app_dir = True/g' /usr/local/lib/python3.10/site-packages/gradio/routes.py + sed -i 's/in_app_dir = .*/in_app_dir = True/g' /usr/local/lib/python3.10/site-packages/gradio/routes.py && \ + git config --global --add safe.directory '*' WORKDIR ${ROOT} ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility From 2efaeb41cdcfddd17a86db096a26a57b971de32e Mon Sep 17 00:00:00 2001 From: AbdBarho Date: Thu, 4 May 2023 07:48:19 +0200 Subject: [PATCH 3/8] Add styles.csv support (#440) Follow up to #386 after https://github.com/AUTOMATIC1111/stable-diffusion-webui/pull/9334 has been merged. Closes #435 --- docker-compose.yml | 2 +- services/AUTOMATIC1111/entrypoint.sh | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 2853c5c..e6750be 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -28,7 +28,7 @@ services: <<: *base_service profiles: ["auto"] build: ./services/AUTOMATIC1111 - image: sd-auto:53 + image: sd-auto:54 environment: - CLI_ARGS=--allow-code --medvram --xformers --enable-insecure-extension-access --api diff --git a/services/AUTOMATIC1111/entrypoint.sh b/services/AUTOMATIC1111/entrypoint.sh index dd96248..5f9e243 100755 --- a/services/AUTOMATIC1111/entrypoint.sh +++ b/services/AUTOMATIC1111/entrypoint.sh @@ -15,6 +15,10 @@ if [ ! -f /data/config/auto/ui-config.json ]; then echo '{}' >/data/config/auto/ui-config.json fi +if [ ! -f /data/config/auto/styles.csv ]; then + touch /data/config/auto/styles.csv +fi + declare -A MOUNTS MOUNTS["/root/.cache"]="/data/.cache" @@ -43,6 +47,7 @@ MOUNTS["${ROOT}/models/ModelScope"]="/data/ModelScope" MOUNTS["${ROOT}/embeddings"]="/data/embeddings" MOUNTS["${ROOT}/config.json"]="/data/config/auto/config.json" MOUNTS["${ROOT}/ui-config.json"]="/data/config/auto/ui-config.json" +MOUNTS["${ROOT}/styles.csv"]="/data/config/auto/styles.csv" MOUNTS["${ROOT}/extensions"]="/data/config/auto/extensions" # extra hacks From 0e5801e9d6c181a6e6535604698bc724799b104d Mon Sep 17 00:00:00 2001 From: AbdBarho Date: Thu, 4 May 2023 22:41:51 +0200 Subject: [PATCH 4/8] Update auto to pytorch 2 (#442) Closes #410 --- docker-compose.yml | 2 +- services/AUTOMATIC1111/Dockerfile | 15 +++++++++------ 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index e6750be..68cb4b1 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -28,7 +28,7 @@ services: <<: *base_service profiles: ["auto"] build: ./services/AUTOMATIC1111 - image: sd-auto:54 + image: sd-auto:55 environment: - CLI_ARGS=--allow-code --medvram --xformers --enable-insecure-extension-access --api diff --git a/services/AUTOMATIC1111/Dockerfile b/services/AUTOMATIC1111/Dockerfile index 19adbef..580dea1 100644 --- a/services/AUTOMATIC1111/Dockerfile +++ b/services/AUTOMATIC1111/Dockerfile @@ -18,17 +18,20 @@ RUN . /clone.sh clip-interrogator https://github.com/pharmapsychotic/clip-interr FROM alpine:3.17 as xformers 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.0/xformers-0.0.17.dev449-cp310-cp310-manylinux2014_x86_64.whl' +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' + FROM python:3.10.9-slim ENV DEBIAN_FRONTEND=noninteractive 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 +RUN apt-get update && apt install fonts-dejavu-core rsync git jq moreutils aria2 -y && apt-get clean -# RUN --mount=type=cache,target=/root/.cache/pip pip install torch==2.0.0+cu118 torchvision --extra-index-url https://download.pytorch.org/whl/cu117 +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 \ + https://download.pytorch.org/whl/cu118/torch-2.0.0%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 -RUN apt-get update && apt install fonts-dejavu-core rsync git jq moreutils -y && apt-get clean RUN --mount=type=cache,target=/root/.cache/pip \ @@ -38,8 +41,8 @@ RUN --mount=type=cache,target=/root/.cache/pip \ pip install -r requirements_versions.txt RUN --mount=type=cache,target=/root/.cache/pip \ - --mount=type=bind,from=xformers,source=/wheel.whl,target=/xformers-0.0.15-cp310-cp310-linux_x86_64.whl \ - pip install triton /xformers-0.0.15-cp310-cp310-linux_x86_64.whl + --mount=type=bind,from=xformers,source=/wheel.whl,target=/xformers-0.0.20.dev528-cp310-cp310-manylinux2014_x86_64.whl \ + pip install /xformers-0.0.20.dev528-cp310-cp310-manylinux2014_x86_64.whl ENV ROOT=/stable-diffusion-webui From 36f39043ded164e29901d2b075c2851b32fb2b3d Mon Sep 17 00:00:00 2001 From: AbdBarho Date: Thu, 4 May 2023 22:54:37 +0200 Subject: [PATCH 5/8] Only run if changed (#444) --- .github/workflows/docker.yml | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 0955d69..448a65c 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -4,9 +4,9 @@ on: push: branches: master pull_request: - paths: - - docker-compose.yml - - services + paths: + - docker-compose.yml + - services jobs: build: @@ -22,4 +22,18 @@ jobs: name: ${{ matrix.profile }} steps: - uses: actions/checkout@v3 + - uses: dorny/paths-filter@v2 + id: changes + with: + filters: | + auto: + - 'services/auto/**' + sygil: + - 'services/sygil/**' + invoke: + - 'services/invoke/**' + comfy: + - 'services/comfy/**' + - run: docker compose --profile ${{ matrix.profile }} build --progress plain + if: github.ref == 'refs/heads/master' || steps.changes.outputs.${{ matrix.profile }} == 'true' From a68734c9f9f50becf264a4dd6028fa096579dc1a Mon Sep 17 00:00:00 2001 From: AbdBarho Date: Thu, 4 May 2023 23:00:46 +0200 Subject: [PATCH 6/8] Revert "Only run if changed (#444)" This reverts commit 36f39043ded164e29901d2b075c2851b32fb2b3d. --- .github/workflows/docker.yml | 20 +++----------------- 1 file changed, 3 insertions(+), 17 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 448a65c..0955d69 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -4,9 +4,9 @@ on: push: branches: master pull_request: - paths: - - docker-compose.yml - - services + paths: + - docker-compose.yml + - services jobs: build: @@ -22,18 +22,4 @@ jobs: name: ${{ matrix.profile }} steps: - uses: actions/checkout@v3 - - uses: dorny/paths-filter@v2 - id: changes - with: - filters: | - auto: - - 'services/auto/**' - sygil: - - 'services/sygil/**' - invoke: - - 'services/invoke/**' - comfy: - - 'services/comfy/**' - - run: docker compose --profile ${{ matrix.profile }} build --progress plain - if: github.ref == 'refs/heads/master' || steps.changes.outputs.${{ matrix.profile }} == 'true' From 9ac33db795c8f3626eac98b6aa5f5d3b02def2bc Mon Sep 17 00:00:00 2001 From: Mat Date: Sat, 6 May 2023 07:38:36 +0200 Subject: [PATCH 7/8] Fix overwriting existing values in config.json in auto (#418) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `jq` merge direction in this case is right to left so if the user had set up custom paths it would replace them with the default ones. This PR switches the direction to use the defaults as fallback instead of overwriting user settings. ---- Didn't want to create an issue for the tiny change. Thanks for your work on the repo, it saved me a lot of time, 👍 --------- Co-authored-by: AbdBarho --- .gitignore | 4 ++ services/AUTOMATIC1111/config.json | 10 ---- services/AUTOMATIC1111/config.py | 78 ++++++++++++++++++++++++++++ services/AUTOMATIC1111/entrypoint.sh | 4 +- 4 files changed, 84 insertions(+), 12 deletions(-) delete mode 100644 services/AUTOMATIC1111/config.json create mode 100644 services/AUTOMATIC1111/config.py diff --git a/.gitignore b/.gitignore index f64b472..2a011a1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,6 @@ /.devcontainer /docker-compose.override.yml + +# VSCode specific +*.code-workspace +/.vscode diff --git a/services/AUTOMATIC1111/config.json b/services/AUTOMATIC1111/config.json deleted file mode 100644 index 7fff2b7..0000000 --- a/services/AUTOMATIC1111/config.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "outdir_samples": "", - "outdir_txt2img_samples": "/output/txt2img", - "outdir_img2img_samples": "/output/img2img", - "outdir_extras_samples": "/output/extras", - "outdir_txt2img_grids": "/output/txt2img-grids", - "outdir_img2img_grids": "/output/img2img-grids", - "outdir_save": "/output/saved", - "font": "DejaVuSans.ttf" -} diff --git a/services/AUTOMATIC1111/config.py b/services/AUTOMATIC1111/config.py new file mode 100644 index 0000000..b8d699e --- /dev/null +++ b/services/AUTOMATIC1111/config.py @@ -0,0 +1,78 @@ +#!/usr/bin/env python3 + +"""Checks and sets default values for config.json before starting the container.""" + +import json +import re +import os.path +import sys + +DEFAULT_FILEPATH = '/data/config/auto/config.json' + +DEFAULT_OUTDIRS = { + "outdir_samples": "", + "outdir_txt2img_samples": "/output/txt2img", + "outdir_img2img_samples": "/output/img2img", + "outdir_extras_samples": "/output/extras", + "outdir_grids": "", + "outdir_txt2img_grids": "/output/txt2img-grids", + "outdir_img2img_grids": "/output/img2img-grids", + "outdir_save": "/output/saved", + "outdir_init_images": "/output/init-images", +} +RE_VALID_OUTDIR = re.compile(r"(^/output(/\.?[\w\-\_]+)+/?$)|(^\s?$)") + +DEFAULT_OTHER = { + "font": "DejaVuSans.ttf", +} + +def dict_to_json_file(target_file: str, data: dict): + """Write dictionary to specified json file""" + + with open(target_file, 'w') as f: + json.dump(data, f) + +def json_file_to_dict(config_file: str) -> dict|None: + """Load json file into a dictionary. Return None if file does not exist.""" + + if os.path.isfile(config_file): + with open(config_file, 'r') as f: + return json.load(f) + else: + return None + +def replace_if_invalid(value: str, replacement: str, pattern: str|re.Pattern[str]) -> str: + """Returns original value if valid, fallback value if invalid""" + + if re.match(pattern, value): + return value + else: + return replacement + +def check_and_replace_config(config_file: str, target_file: str = None): + """Checks given file for invalid values. Replaces those with fallback values (default: overwrites file).""" + + # Get current user config, or empty if file does not exists + data = json_file_to_dict(config_file) or {} + + # Check and fix output directories + for k, def_val in DEFAULT_OUTDIRS.items(): + if k not in data: + data[k] = def_val + else: + data[k] = replace_if_invalid(value=data[k], replacement=def_val, pattern=RE_VALID_OUTDIR) + + # Check and fix other default settings + for k, def_val in DEFAULT_OTHER.items(): + if k not in data: + data[k] = def_val + + # Write results to file + dict_to_json_file(target_file or config_file, data) + +if __name__ == '__main__': + if len(sys.argv) > 1: + check_and_replace_config(*sys.argv[1:]) + else: + check_and_replace_config(DEFAULT_FILEPATH) + diff --git a/services/AUTOMATIC1111/entrypoint.sh b/services/AUTOMATIC1111/entrypoint.sh index 5f9e243..54e709c 100755 --- a/services/AUTOMATIC1111/entrypoint.sh +++ b/services/AUTOMATIC1111/entrypoint.sh @@ -8,8 +8,8 @@ mkdir -p /data/config/auto/scripts/ find "${ROOT}/scripts/" -maxdepth 1 -type l -delete cp -vrfTs /data/config/auto/scripts/ "${ROOT}/scripts/" -cp -n /docker/config.json /data/config/auto/config.json -jq '. * input' /data/config/auto/config.json /docker/config.json | sponge /data/config/auto/config.json +# Set up config file +python /docker/config.py /data/config/auto/config.json if [ ! -f /data/config/auto/ui-config.json ]; then echo '{}' >/data/config/auto/ui-config.json From 7fb8b97b90aa7fd849c7d59eeed5a43e875af67a Mon Sep 17 00:00:00 2001 From: AbdBarho Date: Sat, 6 May 2023 09:48:38 +0200 Subject: [PATCH 8/8] Invoke 2.3.5 (#449) https://github.com/invoke-ai/InvokeAI/commit/d73f1c363c3f2fe00f14ed34e276b4366b32a886 --- docker-compose.yml | 13 ++++++++++--- services/invoke/Dockerfile | 19 ++++++++++--------- services/invoke/entrypoint.sh | 4 +--- 3 files changed, 21 insertions(+), 15 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 68cb4b1..711cee8 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -39,14 +39,21 @@ services: environment: - CLI_ARGS=--no-half --precision full --allow-code --enable-insecure-extension-access --api - invoke: + invoke: &invoke <<: *base_service profiles: ["invoke"] build: ./services/invoke/ - image: sd-invoke:27 + image: sd-invoke:28 environment: - PRELOAD=true - - CLI_ARGS=--no-nsfw_checker --no-safety_checker --xformers + - CLI_ARGS=--xformers + + # invoke-cpu: + # <<: *invoke + # profiles: ["invoke-cpu"] + # environment: + # - PRELOAD=true + # - CLI_ARGS=--always_use_cpu sygil: &sygil <<: *base_service diff --git a/services/invoke/Dockerfile b/services/invoke/Dockerfile index 514d525..5568ac0 100644 --- a/services/invoke/Dockerfile +++ b/services/invoke/Dockerfile @@ -1,6 +1,6 @@ FROM alpine:3.17 as xformers 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.0/xformers-0.0.17.dev449-cp310-cp310-manylinux2014_x86_64.whl' +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' @@ -22,27 +22,26 @@ RUN --mount=type=cache,target=/var/cache/apt \ ln -sf opencv4.pc opencv.pc - ENV ROOT=/InvokeAI RUN git clone https://github.com/invoke-ai/InvokeAI.git ${ROOT} WORKDIR ${ROOT} RUN --mount=type=cache,target=/root/.cache/pip \ git reset --hard 4463124bddd221c333d4c70e73aa2949ad35453d && \ - pip install . + pip install -e . -ARG BRANCH=main SHA=50eb02f68be912276a9c106d5e8038a5671a0386 +ARG BRANCH=main SHA=d73f1c363c3f2fe00f14ed34e276b4366b32a886 RUN --mount=type=cache,target=/root/.cache/pip \ git fetch && \ git reset --hard && \ git checkout ${BRANCH} && \ git reset --hard ${SHA} && \ - pip install -U . + pip install -U -e . RUN --mount=type=cache,target=/root/.cache/pip \ - --mount=type=bind,from=xformers,source=/wheel.whl,target=/xformers-0.0.17-cp310-cp310-linux_x86_64.whl \ - pip install -U opencv-python-headless triton /xformers-0.0.17-cp310-cp310-linux_x86_64.whl && \ + --mount=type=bind,from=xformers,source=/wheel.whl,target=/xformers-0.0.20-cp310-cp310-linux_x86_64.whl \ + pip install -U opencv-python-headless triton /xformers-0.0.20-cp310-cp310-linux_x86_64.whl && \ python3 -c "from patchmatch import patch_match" @@ -54,5 +53,7 @@ ENV PYTHONUNBUFFERED=1 PRELOAD=false HF_HOME=/root/.cache/huggingface CONFIG_DIR EXPOSE 7860 ENTRYPOINT ["/docker/entrypoint.sh"] -CMD invokeai --web --host 0.0.0.0 --port 7860 --root_dir ${ROOT} --config ${CONFIG_DIR}/models.yaml --outdir /output/invoke ${CLI_ARGS} -# TODO: make sure the config is persisted between sessions +CMD invokeai --web --host 0.0.0.0 --port 7860 --root_dir ${ROOT} --config ${CONFIG_DIR}/models.yaml \ + --outdir /output/invoke --embedding_directory /data/embeddings/ --lora_directory /data/Lora \ + --no-nsfw_checker --no-safety_checker ${CLI_ARGS} + diff --git a/services/invoke/entrypoint.sh b/services/invoke/entrypoint.sh index 3594c85..b137c45 100755 --- a/services/invoke/entrypoint.sh +++ b/services/invoke/entrypoint.sh @@ -4,7 +4,7 @@ set -Eeuo pipefail declare -A MOUNTS -mkdir -p ${CONFIG_DIR} +mkdir -p ${CONFIG_DIR} ${ROOT}/configs/stable-diffusion/ # cache MOUNTS["/root/.cache"]=/data/.cache/ @@ -20,8 +20,6 @@ MOUNTS["${ROOT}/models/realesrgan"]=/data/RealESRGAN/ MOUNTS["${ROOT}/models/ldm"]=/data/.cache/invoke/ldm/ -MOUNTS["${ROOT}/embeddings"]=/data/embeddings/ - # hacks for to_path in "${!MOUNTS[@]}"; do