Skip to content

daemonless/immich-ml

Repository files navigation

Immich Machine Learning

Immich Machine Learning service (Python/ONNX) on FreeBSD.

Port 3003
Registry ghcr.io/daemonless/immich-ml
Docs daemonless.io/images/immich-ml
Source https://github.com/immich-app/immich
Website https://immich.app/

Deployment

Podman Compose

services:
  immich-ml:
    image: ghcr.io/daemonless/immich-ml:latest
    container_name: immich-ml
    environment:
      - MACHINE_LEARNING_HOST=0.0.0.0
      - MACHINE_LEARNING_PORT=3003
      - MACHINE_LEARNING_CACHE_FOLDER=/cache
      - PUID=1000
      - PGID=1000
      - TZ=UTC
    volumes:
      - /path/to/containers/immich-ml/cache:/cache
      - /path/to/containers/immich-ml:/config
    ports:
      - 3003:3003
    restart: unless-stopped

Podman CLI

podman run -d --name immich-ml \
  -p 3003:3003 \
  -e MACHINE_LEARNING_HOST=0.0.0.0 \
  -e MACHINE_LEARNING_PORT=3003 \
  -e MACHINE_LEARNING_CACHE_FOLDER=/cache \
  -e PUID=@PUID@ \
  -e PGID=@PGID@ \
  -e TZ=@TZ@ \
  -v /path/to/containers/immich-ml/cache:/cache \
  -v /path/to/containers/immich-ml:/config \
  ghcr.io/daemonless/immich-ml:latest

Access at: http://localhost:3003

Ansible

- name: Deploy immich-ml
  containers.podman.podman_container:
    name: immich-ml
    image: ghcr.io/daemonless/immich-ml:latest
    state: started
    restart_policy: always
    env:
      MACHINE_LEARNING_HOST: "0.0.0.0"
      MACHINE_LEARNING_PORT: "3003"
      MACHINE_LEARNING_CACHE_FOLDER: "/cache"
      PUID: "@PUID@"
      PGID: "@PGID@"
      TZ: "@TZ@"
    ports:
      - "3003:3003"
    volumes:
      - "/path/to/containers/immich-ml/cache:/cache"
      - "/path/to/containers/immich-ml:/config"

Configuration

Environment Variables

Variable Default Description
MACHINE_LEARNING_HOST 0.0.0.0 Host to bind to (0.0.0.0)
MACHINE_LEARNING_PORT 3003 Port to bind to (3003)
MACHINE_LEARNING_CACHE_FOLDER /cache Path to cache folder (/cache)
PUID 1000 User ID for the application process
PGID 1000 Group ID for the application process
TZ UTC Timezone for the container

Volumes

Path Description
/cache Model cache directory (HuggingFace)
/config Configuration directory (unused but mounted)

Ports

Port Protocol Description
3003 TCP ML API

This image is part of the Immich Stack.

Notes

  • Architectures: amd64
  • User: bsd (UID/GID set via PUID/PGID)
  • Base: Built on ghcr.io/daemonless/base (FreeBSD)