invokeai converts models into diffuser format and caches them. We don't want to have to regenerate this cache each time we rebuild container, but it will take a LOT of space on the local drive.
InvokeAI 3.0 has a completely different structure and tries to auto-download everything. There may be better solutions for this such as skipping model downloads or similar, but after initial run the container should start quickly. Most of the symlinks should capture the models roughly into the existing structure used in stable-diffusion-webui-docker repo but further testing should be done. Docker file is based on upstream invokeai's Dockerfile
## Justification
Closes issue #352
This update makes the Dockerfiles OCI compliant, making it easier to use
Buildah or other image building techniques that require it
## Implementation
This changes a few things, listed below:
* auto: Download container is switched to alpine. The `git` container
specified the `/git` directory as a volume. As such, all the files under
`/git` would be lost after each script invoke. Alpine is used later in
the build process anyway, so it shouldn't be any extra cost to switch to
it
* auto: "New" clone.sh script is copied into the container, which is
basically just the previous clone script that was embedded in the
Dockerfile.
* all: `<<EOF` heredoc styles have been switched to `&& \`
* all: I added NVIDIA_DRIVER_CAPABILITIES and NVIDIA_VISIBLE_DEVICES to
expose my Nvidia card. This is most likely a selinux/podman problem, but
shouldn't change anything with docker to add it.
* docker-compose: I added selinux labeling. I tested this with real
docker (not just podman!) and it seems to work fine. Though I suggest
you try it too.
## Testing
Locally builds with buildah.
Note: for caching to work properly, you still need to replace
`/root/.cache/pip` with `/root/.cache/pip,Z` on selinux systems.
Note: I was having some trouble running invoke. Thought it was this PR,
but it's a known issue. See
https://github.com/invoke-ai/InvokeAI/issues/3182
---------
Co-authored-by: AbdBarho <ka70911@gmail.com>
Rename the UIs in docker compose to their new names
Changes folder names
Changes output folder structure
Closes issue #263
Adds `sygil-sl` instead of docker compose flag.
2022-12-04 11:00:28 +01:00
Renamed from services/lstein/Dockerfile (Browse further)