7 Commits
0.3.0 ... 0.3.3

Author SHA1 Message Date
AbdBarho
76989b39a6 Update Versions (#42)
* Update hlky

* Update automatic
2022-09-08 17:56:15 +02:00
AbdBarho
4d9fc381bb Remove restart on failure (#41) 2022-09-07 22:38:02 +02:00
AbdBarho
bcee253fe0 Update README.md 2022-09-07 19:52:43 +02:00
AbdBarho
499143009a Update Versions (#39) 2022-09-07 19:45:03 +02:00
AbdBarho
c614625f04 Update AUTOMATIC1111 (#37) 2022-09-06 20:16:28 +02:00
abdullah
ccd6e238b2 executable 2022-09-06 12:17:19 +02:00
Abdullah Barhoum
829864af9b Add Font 2022-09-05 21:05:43 +02:00
12 changed files with 77 additions and 39 deletions

View File

@@ -6,19 +6,19 @@ on: [push]
jobs: jobs:
build_hlky: build_hlky:
runs-on: ubuntu-latest runs-on: ubuntu-latest
name: Build hlky name: hlky
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- run: docker compose build --progress plain - run: docker compose build --progress plain
build_AUTOMATIC1111: build_AUTOMATIC1111:
runs-on: ubuntu-latest runs-on: ubuntu-latest
name: Build AUTOMATIC1111 name: AUTOMATIC1111
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- run: cd AUTOMATIC1111 && docker compose build --progress plain - run: cd AUTOMATIC1111 && docker compose build --progress plain
build_lstein: build_lstein:
runs-on: ubuntu-latest runs-on: ubuntu-latest
name: Build lstein name: lstein
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- run: cd lstein && docker compose build --progress plain - run: cd lstein && docker compose build --progress plain

22
.github/workflows/executable.yml1 vendored Normal file
View File

@@ -0,0 +1,22 @@
name: Check executable
on: [push]
jobs:
check:
runs-on: ubuntu-latest
name: Check all sh
steps:
- run: git config --global core.fileMode true
- uses: actions/checkout@v3
- shell: bash
run: |
shopt -s globstar;
FAIL=0
for file in **/*.sh; do
if [ -f "${file}" ] && [ -r "${file}" ] && [ ! -x "${file}" ]; then
echo "$file" is not executable;
FAIL=1
fi
done
exit ${FAIL}

View File

@@ -4,6 +4,7 @@ FROM alpine/git:2.36.2 as download
RUN <<EOF RUN <<EOF
# who knows # who knows
git config --global http.postBuffer 1048576000 git config --global http.postBuffer 1048576000
git clone https://github.com/sczhou/CodeFormer.git repositories/CodeFormer
git clone https://github.com/CompVis/stable-diffusion.git repositories/stable-diffusion git clone https://github.com/CompVis/stable-diffusion.git repositories/stable-diffusion
git clone https://github.com/CompVis/taming-transformers.git repositories/taming-transformers git clone https://github.com/CompVis/taming-transformers.git repositories/taming-transformers
rm -rf repositories/taming-transformers/data repositories/taming-transformers/assets rm -rf repositories/taming-transformers/data repositories/taming-transformers/assets
@@ -14,31 +15,39 @@ FROM pytorch/pytorch:1.12.1-cuda11.3-cudnn8-runtime
SHELL ["/bin/bash", "-ceuxo", "pipefail"] SHELL ["/bin/bash", "-ceuxo", "pipefail"]
ENV DEBIAN_FRONTEND=noninteractive ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install git -y && apt-get clean RUN apt-get update && apt-get install git fonts-dejavu-core -y && apt-get clean
RUN <<EOF RUN <<EOF
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 064965c4660f57f24e2d51a9854defaeabf8c0cf git reset --hard db6db585eb9ee48e7315e28603e18531dbc87067
pip install -U --prefer-binary --no-cache-dir -r requirements.txt pip install -U --prefer-binary --no-cache-dir -r requirements.txt
EOF EOF
RUN <<EOF
pip install --prefer-binary -U --no-cache-dir diffusers numpy invisible-watermark git+https://github.com/crowsonkb/k-diffusion.git \
git+https://github.com/TencentARC/GFPGAN.git markupsafe==2.0.1 opencv-python-headless
EOF
ENV ROOT=/workspace/stable-diffusion-webui \ ENV ROOT=/workspace/stable-diffusion-webui \
WORKDIR=/workspace/stable-diffusion-webui/repositories/stable-diffusion \ WORKDIR=/workspace/stable-diffusion-webui/repositories/stable-diffusion
TRANSFORMERS_CACHE=/cache/transformers TORCH_HOME=/cache/torch CLI_ARGS=""
COPY --from=download /git/ ${ROOT} COPY --from=download /git/ ${ROOT}
RUN pip install --prefer-binary -U --no-cache-dir -r ${ROOT}/repositories/CodeFormer/requirements.txt
# Note: don't update the sha of previous versions because the install will take forever
# instead, update the repo state in a later step
ARG SHA=701f76b29ab8fa9c1d35ae8abce36b99e12d5d08
RUN <<EOF
cd stable-diffusion-webui
git pull
git reset --hard ${SHA}
pip install --prefer-binary --no-cache-dir -r requirements.txt
EOF
RUN pip install --prefer-binary -U --no-cache-dir opencv-python-headless markupsafe==2.0.1
ENV TRANSFORMERS_CACHE=/cache/transformers TORCH_HOME=/cache/torch CLI_ARGS=""
COPY . /docker COPY . /docker
RUN chmod +x /docker/mount.sh && python3 /docker/info.py ${ROOT}/modules/ui.py
WORKDIR ${WORKDIR} WORKDIR ${WORKDIR}
EXPOSE 7860 EXPOSE 7860
# run, -u to not buffer stdout / stderr # run, -u to not buffer stdout / stderr
CMD /docker/mount.sh && python3 -u ../../webui.py --listen ${CLI_ARGS} CMD /docker/mount.sh && python3 -u ../../webui.py --listen --port 7860 ${CLI_ARGS}

View File

@@ -10,3 +10,5 @@ Clone this repo, download the `model.ckpt` and `GFPGANv1.3.pth` and put into the
cd AUTOMATIC1111 cd AUTOMATIC1111
docker compose up --build docker compose up --build
``` ```
You can change the cli parameters in `AUTOMATIC1111/docker-compose.yml`. The full list of cil parameters can be found [here](https://github.com/AUTOMATIC1111/stable-diffusion-webui/blob/master/modules/shared.py)

View File

@@ -1,3 +1,4 @@
{ {
"outdir_samples": "/output" "outdir_samples": "/output",
"font": "DejaVuSans.ttf"
} }

14
AUTOMATIC1111/info.py Normal file
View File

@@ -0,0 +1,14 @@
import sys
from pathlib import Path
file = Path(sys.argv[1])
file.write_text(
file.read_text()\
.replace(' return demo', """
with demo:
gr.Markdown(
'Created by [AUTOMATIC1111 / stable-diffusion-webui-docker](https://github.com/AbdBarho/stable-diffusion-webui-docker/tree/master/AUTOMATIC1111)'
)
return demo
""", 1)
)

4
AUTOMATIC1111/mount.sh Normal file → Executable file
View File

@@ -23,6 +23,10 @@ ln -s -T /models /opt/conda/lib/python3.7/site-packages/realesrgan/weights
# force facexlib cache # force facexlib cache
mkdir -p /cache/weights/ ${WORKDIR}/gfpgan/ mkdir -p /cache/weights/ ${WORKDIR}/gfpgan/
ln -sf /cache/weights/ ${WORKDIR}/gfpgan/ ln -sf /cache/weights/ ${WORKDIR}/gfpgan/
# code former cache
rm -rf ${ROOT}/repositories/CodeFormer/weights/CodeFormer ${ROOT}/repositories/CodeFormer/weights/facelib
ln -sf -T /cache/weights ${ROOT}/repositories/CodeFormer/weights/CodeFormer
ln -sf -T /cache/weights ${ROOT}/repositories/CodeFormer/weights/facelib
# mount config # mount config
ln -sf /docker/config.json ${WORKDIR}/config.json ln -sf /docker/config.json ${WORKDIR}/config.json

View File

@@ -1,4 +1,4 @@
# Stable Diffusion WebUI Docker # Stable Diffusion WebUI Docker
Run Stable Diffusion on your machine with a nice UI without any hassle! Run Stable Diffusion on your machine with a nice UI without any hassle!
@@ -9,6 +9,8 @@ Now with experimental support for 2 other forks:
- [AUTOMATIC1111](./AUTOMATIC1111/) (Stable, very few bugs!) - [AUTOMATIC1111](./AUTOMATIC1111/) (Stable, very few bugs!)
- [lstein](./lstein/) - [lstein](./lstein/)
NOTE: big update coming up!
## Features ## Features
- Interactive UI with many features, and more on the way! - Interactive UI with many features, and more on the way!
@@ -67,7 +69,7 @@ You can find fixes to common issues [in the wiki page.](https://github.com/AbdBa
## Config ## Config
in the `docker-compose.yml` you can change the `CLI_ARGS` variable, which contains the arguments that will be passed to the WebUI. By default: `--extra-models-cpu --optimized-turbo` are given, which allow you to use this model on a 6GB GPU. However, some features might not be available in the mode. [You can find the full list of arguments here.](https://github.com/hlky/stable-diffusion/blob/bb765f1897c968495ffe12a06b421d97b56d5ae1/scripts/webui.py) in the `docker-compose.yml` you can change the `CLI_ARGS` variable, which contains the arguments that will be passed to the WebUI. By default: `--extra-models-cpu --optimized-turbo` are given, which allow you to use this model on a 6GB GPU. However, some features might not be available in the mode. [You can find the full list of arguments here.](https://github.com/hlky/stable-diffusion-webui/blob/2b1ac8daf7ea82c6c56eabab7e80ec1c33106a98/scripts/webui.py)
You can set the `WEBUI_SHA` to [any SHA from the main repo](https://github.com/hlky/stable-diffusion/commits/main), this will build the container against that commit. Use at your own risk. You can set the `WEBUI_SHA` to [any SHA from the main repo](https://github.com/hlky/stable-diffusion/commits/main), this will build the container against that commit. Use at your own risk.

View File

@@ -8,7 +8,6 @@ services:
# You can choose any commit sha from https://github.com/hlky/stable-diffusion/commits/main # You can choose any commit sha from https://github.com/hlky/stable-diffusion/commits/main
# USE AT YOUR OWN RISK! otherwise just leave it empty. # USE AT YOUR OWN RISK! otherwise just leave it empty.
WEBUI_SHA: WEBUI_SHA:
restart: on-failure
ports: ports:
- "7860:7860" - "7860:7860"
volumes: volumes:

View File

@@ -11,9 +11,9 @@ RUN apt-get update && apt install fonts-dejavu-core rsync -y && apt-get clean
RUN <<EOF RUN <<EOF
git clone https://github.com/hlky/stable-diffusion.git git clone https://github.com/sd-webui/stable-diffusion-webui.git stable-diffusion
cd stable-diffusion cd stable-diffusion
git reset --hard c84748aa6802c2f934687883a79bde745d2a58a6 git reset --hard 2b1ac8daf7ea82c6c56eabab7e80ec1c33106a98
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
@@ -23,23 +23,10 @@ RUN pip install -U --no-cache-dir pyperclip
# 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 WEBUI_SHA=bb765f1897c968495ffe12a06b421d97b56d5ae1 ARG WEBUI_SHA=0dffc3918d596ad36a32ac56ecf4d523f490ae5e
RUN cd stable-diffusion && git pull && git reset --hard ${WEBUI_SHA} && \ RUN cd stable-diffusion && git pull && git reset --hard ${WEBUI_SHA} && \
conda env update --file environment.yaml --name base && conda clean -a -y conda env update --file environment.yaml --name base && conda clean -a -y
# download dev UI version, update the sha below in case you want some other version
# RUN <<EOF
# git clone https://github.com/hlky/stable-diffusion-webui.git
# cd stable-diffusion-webui
# # map to this file: https://github.com/hlky/stable-diffusion-webui/blob/master/.github/sync.yml
# git reset --hard 49e6178fd82ca736f9bbc621c6b12487c300e493
# cp -t /stable-diffusion/scripts/ webui.py relauncher.py txt2img.yaml
# cp -t /stable-diffusion/configs/webui webui.yaml
# cp -t /stable-diffusion/frontend/ frontend/*
# cd / && rm -rf stable-diffusion-webui
# EOF
# Textual inversion # Textual inversion
RUN <<EOF RUN <<EOF
git clone https://github.com/hlky/sd-enable-textual-inversion.git && git clone https://github.com/hlky/sd-enable-textual-inversion.git &&
@@ -62,7 +49,7 @@ EOF
# add info # add info
COPY . /docker/ COPY . /docker/
RUN python /docker/info.py /stable-diffusion/frontend/frontend.py RUN python /docker/info.py /stable-diffusion/frontend/frontend.py && chmod +x /docker/mount.sh
WORKDIR /stable-diffusion WORKDIR /stable-diffusion
ENV TRANSFORMERS_CACHE=/cache/transformers TORCH_HOME=/cache/torch CLI_ARGS="" ENV TRANSFORMERS_CACHE=/cache/transformers TORCH_HOME=/cache/torch CLI_ARGS=""

5
hlky/mount.sh Normal file → Executable file
View File

@@ -26,6 +26,5 @@ if test -f /models/LDSR.yaml; then
fi fi
# force facexlib cache # force facexlib cache
mkdir -p /cache/weights/ mkdir -p /cache/weights/ /stable-diffusion/gfpgan/
rm -rf /stable-diffusion/src/facexlib/facexlib/weights ln -sf /cache/weights/ /stable-diffusion/gfpgan/
ln -sf /cache/weights/ /stable-diffusion/src/facexlib/facexlib/

View File

@@ -3,7 +3,6 @@ version: '3.9'
services: services:
model: model:
build: . build: .
restart: on-failure
ports: ports:
- "7860:7860" - "7860:7860"
volumes: volumes: