This workspace builds Immich from git@github.com:alfanick/immich.git and runs
it with rootless Podman Quadlet. PostgreSQL stays on the host.
./scripts/build-images.shThe source checkout is src/immich. The fork is origin; the official Immich
repo is upstream.
The server image also installs the latest mini-film GitHub release binary for
the target Linux architecture, plus rawtherapee-cli, exiftool, and
ImageMagick convert. Override MINI_FILM_VERSION in config/build.env to pin
a specific release tag.
Run the database bootstrap with PostgreSQL admin privileges:
sudo /mnt/scratch/Immich/scripts/ensure-immich-db.sh --install-extensions--install-extensions builds pgvector 0.8.2 from upstream source, installs
VectorChord 1.1.1 from the upstream GitHub release .deb, adds vchord to
shared_preload_libraries if needed, and restarts the local PostgreSQL cluster
only when VectorChord/preload state changes. Current Immich main needs pgvector
>=0.7,<0.9; Ubuntu noble's distro package can be too old, so the script does
not rely on that package.
Install the user Quadlet units without starting services:
./scripts/install-quadlet.shAfter the images are built and the database check passes, start Immich:
systemctl --user start immich-server.serviceEnable startup on login:
./scripts/install-quadlet.sh --enableCheck status:
./scripts/status.sh
curl -fsS http://127.0.0.1:2283/api/server/ping