# Immich (photo)

## Назначение
Self-hosted Google Photos альтернатива. Автозагрузка фото с телефона, ML-распознавание лиц и объектов, умный поиск.

## Контейнеры

| Имя | Образ |
|-----|-------|
| immich_server | ghcr.io/immich-app/immich-server:release |
| immich_machine_learning | ghcr.io/immich-app/immich-machine-learning:release |
| immich_redis | redis:7-alpine |
| immich_postgres | tensorchord/pgvecto-rs:pg14-v0.2.0 |

## Порты

| Контейнер | Внутренний | Назначение |
|-----------|-----------|------------|
| immich_server | 2283 | Web UI (через NPM) |
| immich_redis | 6379 | Redis |
| immich_postgres | 5432 | PostgreSQL + pgvecto-rs |

## Volumes

| Путь хоста | Контейнер | Путь контейнера | Содержимое |
|-----------|-----------|----------------|------------|
| ./upload | immich_server | /usr/src/app/upload | Загруженные фото |
| ./model-cache | immich_ml | /cache | ML-модели |
| ./pgdata | immich_postgres | /var/lib/postgresql/data | БД |
| ../nextcloud/nextcloud_data/data | immich_server | /mnt/nextcloud | Файлы Nextcloud (ro) |
| /etc/localtime | immich_server | /etc/localtime | Время (ro) |

## Домен
Через NPM (не указан явно).

## Сети
- `photo_backend` (internal)
- `services_proxy` (external, только immich_server)

## Env переменные
- `DB_HOSTNAME`, `DB_USERNAME`, `DB_PASSWORD`, `DB_DATABASE_NAME`
- `REDIS_HOSTNAME`
- `POSTGRES_PASSWORD`, `POSTGRES_USER`, `POSTGRES_DB`

## Статус
✅ **Все контейнеры запущены** (Up 4 weeks, immich_server healthy)

## Заметки
- Использует `pgvecto-rs` — PostgreSQL с расширением для векторного поиска (нужно для ML)
- immich_machine_learning работает только во внутренней сети
