From 1094b69946e4919a573c5924cfafe4019b3d26a3 Mon Sep 17 00:00:00 2001 From: Matthew Momjian <50788000+mmomjian@users.noreply.github.com> Date: Tue, 28 Jul 2026 10:57:21 -0400 Subject: [PATCH] fix(deployment): matplotlib in rootless deployments (#30328) --- docker/docker-compose.rootless.yml | 2 -- docs/docs/FAQ.mdx | 2 -- machine-learning/Dockerfile | 3 +++ 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/docker/docker-compose.rootless.yml b/docker/docker-compose.rootless.yml index 287480fe6d..65b13f2b9d 100644 --- a/docker/docker-compose.rootless.yml +++ b/docker/docker-compose.rootless.yml @@ -51,8 +51,6 @@ services: - NET_RAW volumes: - ./ml-model-cache:/cache - - ./ml-dotcache:/.cache - - ./ml-config:/.config env_file: - .env restart: always diff --git a/docs/docs/FAQ.mdx b/docs/docs/FAQ.mdx index 214d692848..869e84e377 100644 --- a/docs/docs/FAQ.mdx +++ b/docs/docs/FAQ.mdx @@ -413,8 +413,6 @@ You can change the user in the container by setting the `user` argument in `dock You may need to add mount points or docker volumes for the following internal container paths: -- `immich-machine-learning:/.config` -- `immich-machine-learning:/.cache` - `redis:/data` The non-root user/group needs read/write access to the volume mounts, including `UPLOAD_LOCATION` and `/cache` for machine-learning. diff --git a/machine-learning/Dockerfile b/machine-learning/Dockerfile index 283d1f24d4..afbd72e99e 100644 --- a/machine-learning/Dockerfile +++ b/machine-learning/Dockerfile @@ -160,6 +160,9 @@ ENV IMMICH_SOURCE_REF=${BUILD_SOURCE_REF} ENV IMMICH_SOURCE_COMMIT=${BUILD_SOURCE_COMMIT} ENV IMMICH_SOURCE_URL=https://github.com/immich-app/immich/commit/${BUILD_SOURCE_COMMIT} +# store matplotlib config in /cache subfolder to enable rootless deployment with a single volume +ENV MPLCONFIGDIR=/cache/matplotlib + ENTRYPOINT ["tini", "--"] CMD ["python", "-m", "immich_ml"]