immich
Backup photos and videos
TLDR
Authenticate to Immich server
Upload some image files
Upload a directory including subdirectories
Create an album based on a directory
Skip assets matching a glob pattern
Include hidden files
SYNOPSIS
immich <subcommand> [options] <args>
Example: immich migration:run
PARAMETERS
migration:run
Run database migrations
migration:generate
Generate new migrations
server:start
Start Immich server
assets:thumbgen
Generate thumbnails for assets
jobs:run
Run background jobs like indexing
--config <path>
Specify config file path
--env-file <path>
Load environment variables from file
--help
Display help for command
--verbose
Enable verbose logging
--dry-run
Simulate actions without changes
DESCRIPTION
Immich is a rapidly developing open-source self-hosted photo and video management platform, offering a Google Photos-like experience on your own server. The immich command refers to the project's CLI interface or wrapper scripts used for server management, database tasks, asset processing, and API interactions.
Primarily deployed via Docker Compose, it consists of microservices including the web server (Node.js), microservices for jobs, machine learning (Python/Rust for AI features like facial recognition, object detection, smart search), PostgreSQL database, Redis cache, and a proxy. Users install by cloning the GitHub repo, configuring .env, and running docker compose up -d.
The CLI enables commands like running migrations, generating thumbnails, indexing libraries, or bulk uploading assets. It's ideal for homelabs, supporting mobile apps for auto-backup, multi-user accounts, shared albums, timeline views, and video transcoding. While not a traditional packaged binary (absent from apt/yum), custom installs or third-party tools provide direct immich invocation.
Focuses on privacy, performance (handles 100k+ photos), and extensibility with plugins.
CAVEATS
Not a standard distro package; requires Docker/Node.js setup from GitHub repo. High resource use for ML features (GPU recommended). Always backup database before migrations.
CLI often invoked via docker compose exec immich-server npx or npm.
INSTALLATION
git clone https://github.com/immich-app/immich.git
cd immich
cp .env.example .env
docker compose up -d
Access at http://localhost:2283
KEY FEATURES
AI facial/object recognition, auto-backup apps (iOS/Android), sharing, search, maps, live photos, 4K video support, multi-tenancy.
CLI USAGE EXAMPLE
docker compose exec -u node immich-server npx @immich/cli migration:run
docker compose exec immich-machine-learning python cli.py
HISTORY
Launched in 2022 by Alexander Wolf on GitHub. Gained traction in self-hosting communities (e.g., r/selfhosted). Frequent releases: v1.0 in 2023 with stable API; v1.100+ added CLI improvements, PWA support. Over 40k stars, active development.
SEE ALSO
docker-compose(1), docker(1), npm(1), node(1), postgres(1)


