Compare commits

...

15 Commits

Author SHA1 Message Date
fbt
253a8b7555 merge
Signed-off-by: fbt <fbt@fleshless.org>
2023-10-25 15:08:02 +00:00
fbt
0086e6c667 Don't need these
Signed-off-by: fbt <fbt@fleshless.org>
2023-10-25 15:07:21 +00:00
42377b6082 Update README.md 2023-10-25 13:11:23 +00:00
ee3b3a1efb Update README.md 2023-10-25 13:11:13 +00:00
e3e34f2784 Update README.md 2023-10-25 13:11:05 +00:00
fbt
102f719a47 Merge branch 'master' of ssh://code.fleshless.org:2290/fbt/stable-diffusion-ui-podman 2023-10-24 19:23:22 +00:00
fbt
114eaafb90 oh you do actually need this
Signed-off-by: fbt <fbt@fleshless.org>
2023-10-24 19:23:15 +00:00
83a79aae60 Update README.md 2023-10-24 19:11:22 +00:00
fbt
c9f5a6104e readme
Signed-off-by: fbt <fbt@fleshless.org>
2023-10-24 19:09:07 +00:00
fbt
587d28827e Merge branch 'master' of ssh://code.fleshless.org:2290/fbt/stable-diffusion-ui-podman 2023-10-24 18:53:13 +00:00
fbt
37df3b5430 Tweaks
Signed-off-by: fbt <fbt@fleshless.org>
2023-10-24 18:53:02 +00:00
72565f7b2f Update README.md 2023-10-24 18:15:34 +00:00
fbt
f738ec2282 Readme
Signed-off-by: fbt <fbt@fleshless.org>
2023-10-24 18:12:15 +00:00
fbt
6d7b63e174 Merge branch 'master' of ssh://code.fleshless.org:2290/fbt/stable-diffusion-ui-podman 2023-10-23 10:32:45 +00:00
fbt
f68a4c08ae stop with the browser shit
Signed-off-by: fbt <fbt@fleshless.org>
2023-10-23 10:32:38 +00:00
4 changed files with 23 additions and 20 deletions

View File

@@ -8,7 +8,7 @@ RUN git clone https://aur.archlinux.org/stable-diffusion-ui.git /sdu
WORKDIR /sdu
RUN chown -R build:build /sdu
RUN sudo -u build makepkg -is --noconfirm
RUN sudo -u build makepkg -s --noconfirm
RUN mv -v stable-diffusion-ui*.pkg.tar.zst /stable-diffusion-ui.pkg.tar.zst
# Stage 1
@@ -16,12 +16,9 @@ FROM archlinux:latest
COPY --from=0 /stable-diffusion-ui.pkg.tar.zst /stable-diffusion-ui.pkg.tar.zst
RUN pacman-key --init
RUN pacman -Suy --noconfirm
RUN pacman -Suy --noconfirm which nvidia-utils
COPY init /init
COPY config.yaml /config.yaml
RUN pacman -S --noconfirm which nvidia-utils
RUN useradd -m -s /usr/bin/bash -d /srv/stable-diffusion stable-diffusion
ENTRYPOINT /init
CMD /init

View File

@@ -1,18 +1,26 @@
# HOWTO
# What is this?
This targets Nvidia and Arch, and nothing else, I'm old and lazy.
This repo is an easy way to run Easy Diffusion in a podman container. I needed to put Easy Diffusion into a container for my own purposes, and publishing this wasn't a lot of effort; so here we are.
I highly recommend rootless podman, as otherwise running the container will result in the ui running as root in a privileged container.
~~This targets Nvidia and Arch, and nothing else, I'm old and lazy.~~
It should work on anything that has an Nvidia GPU, podman, and the nvidia container toolkit (with the nvidia devices setup hook).
Note that there's currently an issue with the AUR packages for Nvidia's container toolkit. See [this issue](https://gitlab.com/nvidia/container-toolkit/container-toolkit/-/issues/17) for details and a [workaround](https://gitlab.com/nvidia/container-toolkit/container-toolkit/-/issues/17#note_1530784413).
# HOWTO
* [Set up GPU access in podman](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html#configuring-podman)
* Run the following:
```
# Build the image
podman build --no-cache . -t 'stable-diffusion-ui-server'
podman build . -t 'stable-diffusion-ui'
# Run the container
podman run -it --device nvidia.com/gpu=all --security-opt=label=disable --name stable-diffusion-ui -p 9000:9000 -v ./data:/opt/stable-diffusion-ui -e NVIDIA_DRIVER_CAPABILITIES=compute,utility localhost/stable-diffusion-ui-server
podman run -it --device nvidia.com/gpu=all --security-opt=label=disable --name stable-diffusion-ui -p 9000:9000 -v ./data:/opt/stable-diffusion-ui localhost/stable-diffusion-ui
# Get to the interface
browser http://localhost:9000

2
config.yaml Executable file → Normal file
View File

@@ -22,6 +22,6 @@ update_branch: main
use_v3_engine: true
models_dir: /opt/stable-diffusion-ui/models
model:
stable-diffusion: lazyphoton-0.50000
stable-diffusion: realism/photon_v1
vae: vae-ft-mse-840000-ema-pruned
vram_usage_level: low

16
init
View File

@@ -5,15 +5,13 @@ cfg="/opt/stable-diffusion-ui/config.yaml"
if [[ -f "$pkg" ]]; then
pacman -U --noconfirm --overwrite '/opt/stable-diffusion-ui/*' "$pkg"
if ! [[ -f "$cfg" ]]; then
mv /config.yaml "$cfg" || {
printf 'Failed to move the default config file to %s!\n' "$cfg"
}
fi
chown -R stable-diffusion:stable-diffusion /opt/stable-diffusion-ui
rm -vf "$pkg"
fi
exec su stable-diffusion -c '/usr/bin/stable-diffusion-ui-server'
if ! [[ -f "$cfg" ]]; then
mv /config.yaml "$cfg" || {
printf 'Failed to move the default config file to %s!\n' "$cfg"
}
fi
exec /usr/bin/stable-diffusion-ui-server