Immich на домашнем сервере или NAS: свой Google Photos для фотографий и видео
Immich позволяет хранить семейные фотографии и видео на собственном сервере, автоматически загружать их со смартфонов, искать снимки по содержимому, распознавать лица, собирать альбомы и открывать архив с телефона или браузера. Но Immich не заменяет резервное копирование: фотографии и база данных должны иметь отдельные независимые копии.
Что такое Immich и зачем он нужен дома
Immich - self-hosted система управления фотографиями и видео. В отличие от обычной сетевой папки на NAS, она создаёт удобную фототеку с временной шкалой, мобильным приложением, альбомами, поиском, распознаванием лиц и автоматической загрузкой файлов со смартфонов.
Фото с телефона
Автоматическая загрузка выбранных альбомов с Android и iOS.
Единая библиотека
Фотографии с нескольких телефонов, камер и старых архивов в одном интерфейсе.
Поиск
Дата, место, камера, теги, текст на изображении и семантический поиск.
Лица
Группировка фотографий по распознанным людям.
Видео
Просмотр роликов и создание совместимых перекодированных версий.
Свой сервер
Основные файлы находятся на вашем оборудовании, а не только в чужом облаке.
Immich вместо Google Photos: что меняется
| Параметр | Immich | Облачный фотосервис |
|---|---|---|
| Где лежат оригиналы | На вашем сервере/NAS | У провайдера сервиса |
| Объём | Ограничен вашими дисками | Ограничен тарифом |
| Администрирование | На владельце | На провайдере |
| Обновления | Нужно обслуживать сервер | Автоматически |
| Backup | Нужно проектировать самостоятельно | Зависит от политики провайдера |
| Приватность и контроль | Высокий контроль инфраструктуры | Данные обрабатываются внешним сервисом |
Immich особенно интересен владельцам большого семейного архива, домашнего NAS или сервера, когда платить за постоянно растущий облачный объём не хочется или важно сохранить локальный контроль над оригиналами.
Но self-hosting означает ответственность: диски, UPS, обновления, резервные копии и восстановление становятся вашей задачей.
Из каких компонентов состоит Immich
В базе PostgreSQL хранятся не сами фотографии, а информация о пользователях, путях к файлам, альбомах, распознанных лицах, metadata и других объектах.
Поэтому для полноценного восстановления нужны и исходные медиаданные, и база данных.
Какое железо нужно для Immich
Для тестового запуска официальная документация ориентируется минимум на систему примерно с 2 CPU cores и 6 ГБ RAM. Для большой семейной библиотеки разумнее иметь запас.
Нужна ли видеокарта
Для обычной работы дискретный GPU не обязателен. Machine Learning может работать на CPU. Аппаратное ускорение полезно при большой библиотеке, массовом распознавании и обработке видео, но это уже оптимизация, а не условие запуска.
Где лучше запускать Immich: на NAS или отдельном mini-PC
Immich прямо на NAS
- меньше устройств;
- короткий путь к файлам;
- проще домашняя инфраструктура;
- подходит мощному x86 NAS с Docker.
Mini-PC + NAS
- больше CPU/RAM;
- база на быстром локальном SSD;
- NAS занимается хранением;
- проще масштабировать сервисы.
Если NAS имеет слабый ARM-процессор и 2 ГБ памяти, загружать на него Immich, распознавание лиц, видеоперекодирование и ещё десяток контейнеров может быть плохой идеей.
Если это современный NAS с достаточной памятью и официально поддерживаемой контейнерной средой, запуск на одном устройстве вполне возможен.
Если NAS только планируется: NAS дома: зачем нужен сетевой диск и когда он лучше облака .
Где хранить PostgreSQL, оригиналы и thumbnails
Официальная документация Immich отдельно подчёркивает: PostgreSQL database желательно размещать на локальном SSD, а не на сетевой SMB/NFS-папке.
| Данные | Где лучше хранить | Почему |
|---|---|---|
| PostgreSQL DB | Локальный SSD | Низкая latency, корректная работа файловой системы и permissions |
| Original photos/videos | Большой HDD/RAID/NAS | Нужен объём, а не максимальный IOPS |
| Thumbnails | SSD или быстрый storage | Большое количество небольших файлов |
| Encoded video | По объёму и нагрузке | Может занимать значительное место |
| Database backups | Не только рядом с DB | Должны пережить отказ основного SSD |
Как установить Immich через Docker Compose
Для production-развёртывания официальный проект рекомендует Docker Compose.
Общая схема установки:
-
1
Подготовить Docker Engine
Используйте актуальный Docker с Compose plugin.
-
2
Создать каталог Immich
В нём будут храниться
docker-compose.ymlи.env. -
3
Скачать файлы текущего release
Не копируйте compose-файл из старой случайной статьи.
-
4
Настроить .env
Укажите каталог медиа, database location и сильный пароль базы.
-
5
Запустить контейнеры
Используется современная команда
docker compose up -d. -
6
Создать администратора
Первый пользователь получает административные права.
mkdir -p /opt/immich
cd /opt/immich
# docker-compose.yml и .env
# берём из актуального release Immich
docker compose pull
docker compose up -d
Как настроить автоматическую загрузку фото с Android и iPhone
В мобильном приложении можно выбрать альбомы телефона и включить Backup. Immich вычисляет checksum файлов и пропускает уже имеющиеся на сервере одинаковые assets.
Что можно выбрать
- какие локальные albums загружать;
- какие albums исключить;
- использовать ли мобильный интернет;
- синхронизировать ли структуру album с сервером;
- ограничивать ли background upload условиями устройства.
Android
Некоторые производители агрессивно ограничивают background processes. Если фотографии загружаются только после ручного запуска Immich, проверьте battery optimization и разрешение фоновой работы.
iPhone
Для фоновой работы нужен Background App Refresh. iOS сама решает, когда разрешить background task, поэтому загрузка не всегда начинается мгновенно после съёмки.
Как перенести старый архив фотографий
У многих пользователей к моменту установки Immich уже есть годы фотографий:
- Google Photos;
- старые телефоны;
- папки на Windows;
- Synology NAS;
- внешние HDD;
- архивы камеры;
- Apple Photos / iCloud.
Есть два основных подхода.
Импортировать в Immich
Файлы становятся управляемой библиотекой Immich и размещаются в его storage.
External Library
Оригиналы остаются в существующей структуре папок, а Immich индексирует их.
Для Google Takeout проект Immich также указывает на специализированные инструменты импорта, например immich-go. Перед массовым импортом сначала сделайте копию исходного архива и протестируйте процесс на небольшой части библиотеки.
External Library: как подключить существующую папку с фотографиями
External Library удобна, если фото уже организованы на NAS и вы не хотите переносить оригиналы во внутреннюю структуру Immich.
Папка монтируется в контейнер Immich, после чего администратор создаёт External Library и запускает scan.
services:
immich-server:
volumes:
- /mnt/photos:/mnt/photos:ro
Для первого подключения существующего семейного архива режим :ro часто является самым безопасным: Immich может индексировать файлы, но не удалять и не изменять оригиналы.
Но есть важный нюанс
Albums, descriptions и часть других данных, которые пользователь создаёт внутри Immich для external assets, хранятся в базе Immich. Они не обязаны записываться обратно внутрь оригинального JPEG/RAW.
Поэтому потеря базы может означать потерю именно этой дополнительной организации, даже если сами фотографии физически сохранились.
Поиск по фотографиям, лица и OCR
Главное отличие Immich от обычной папки SMB - автоматическая индексация медиатеки.
Фотографии группируются по распознанным людям.
Поиск по содержимому изображения с использованием ML-модели.
Поиск текста, присутствующего на изображении.
Камера, объектив, дата и другие параметры.
Поиск и просмотр фотографий по геоданным.
Для external libraries можно искать по элементам пути.
После первого импорта большой библиотеки обработка thumbnails, metadata, facial recognition и machine learning может занять часы или дни. Это нормально: большинство тяжёлых jobs выполняется один раз для старых файлов.
Как организовать семейную библиотеку
Лучше создать отдельного пользователя для каждого члена семьи, а не использовать одну общую административную учётную запись на всех телефонах.
Это удобнее для разграничения приватных фотографий, определения владельца assets и дальнейшего управления.
Общие события, поездки и семейные фотографии можно собирать в shared albums, не смешивая полностью аккаунты пользователей.
Как безопасно открывать Immich снаружи дома
Для мобильного backup вне домашнего Wi-Fi сервер должен быть доступен телефону.
Основные варианты:
| Способ | Когда подходит |
|---|---|
| Tailscale | Личный и семейный доступ без публичной публикации сервиса |
| WireGuard VPN | Есть собственный VPN-server и нормальная маршрутизация |
| Reverse Proxy + HTTPS | Нужен публично доступный endpoint с корректной защитой |
| Только LAN | Если backup нужен только дома по Wi-Fi |
Для личного доступа без белого IP: Tailscale без белого IP: доступ к NAS и домашнему серверу .
Самая важная часть: как резервировать Immich
Сам Immich рекомендует стратегию 3-2-1. Для полноценного backup нужно защитить два принципиально разных набора данных:
Фото и видео в media storage.
Пути, пользователи, albums, metadata и связи.
Встроенный database backup не копирует фотографии
Immich умеет автоматически создавать database dumps. Они предназначены для disaster recovery базы, но не содержат сами фотографии и видео.
Поэтому файл database backup без копии media storage не является полноценной резервной копией Immich.
Что копировать
- оригинальные assets;
- database dumps;
- конфигурацию
.envбез публикации secrets; - актуальный compose/setup;
- при необходимости thumbnails и encoded videos для быстрого восстановления;
- external libraries резервируются отдельно как обычные фотоархивы.
Порядок backup
Идеальный вариант - кратко остановить запись в Immich на время согласованного backup. Если это невозможно, документация рекомендует сначала резервировать базу, затем файловую систему.
Базовый принцип: резервное копирование 3-2-1 для NAS, ПК и семейных фотографий .
Что потребуется, если сервер Immich полностью умер
Хороший backup должен позволять восстановиться даже на новом сервере.
В актуальном Immich восстановление database dump можно выполнять через интерфейс Maintenance или средствами командной строки в зависимости от сценария.
Перед restore важно вернуть файлы в ожидаемые storage paths. Иначе база будет ссылаться на assets, которых физически нет на диске.
Как обновлять Immich и не сломать фототеку
Immich развивается быстро. Поэтому обновление нужно относить к обычному обслуживанию домашнего сервера.
-
1
Проверить release notes
Особенно breaking changes и изменения compose/.env.
-
2
Проверить backup
Database dump и медиакопия должны существовать до обновления.
-
3
Обновить compose при необходимости
Не считать старый docker-compose.yml вечным.
-
4
Скачать новые images
docker compose pull -
5
Перезапустить stack
docker compose up -d -
6
Проверить jobs и mobile app
Убедиться, что uploads, timeline и ML работают после миграций.
Как ускорить Immich с большой библиотекой
PostgreSQL на SSD
Самый базовый шаг для отзывчивой базы.
Достаточно RAM
Контейнеры, Postgres и ML не должны постоянно бороться за память.
Hardware acceleration
Может ускорить обработку видео и ML на совместимом оборудовании.
2.5GbE
Полезно при сервере отдельно от NAS и массовом импорте.
Не запускать всё сразу
Первичный ML 200 000 assets способен серьёзно загрузить CPU.
Следить за диском
Thumbnails и encoded video требуют дополнительного места сверх оригиналов.
Для просмотра фотографий гигабитной сети обычно достаточно. 2.5GbE становится особенно заметен при первичном импорте сотен гигабайт или терабайтов между NAS и отдельным сервером.
Типичные ошибки при создании домашнего Immich
Считать Immich backup
Фотосервис и независимое резервное копирование - разные уровни защиты.
Копировать только PostgreSQL
Database dump не содержит оригиналы фотографий и видео.
Копировать только папку с фото
Теряются albums, users, metadata и другая информация базы.
PostgreSQL на SMB
База должна находиться на подходящей локальной файловой системе.
Дать Immich запись в старый архив сразу
External Library лучше сначала подключить read-only и проверить поведение.
Один admin для всей семьи
Сложнее разграничивать владельцев и приватные assets.
Открыть порт наружу
Для личного доступа проще использовать VPN/Tailscale или корректный reverse proxy.
Обновлять без backup
Активно развивающийся self-hosted сервис требует дисциплины обновлений.
Удалить фото с телефона слишком рано
Сначала убедитесь, что файл действительно загружен и имеет независимую резервную копию.
Не считать свободное место
Thumbnails, ML и encoded video занимают дополнительный объём.
Частые вопросы
Immich полностью заменяет Google Photos?
По многим домашним сценариям он может выполнять похожую роль: мобильная загрузка, timeline, albums, поиск и лица. Но сервер, обновления, резервное копирование и удалённый доступ администрирует сам владелец.
Можно ли установить Immich на Synology NAS?
Если модель NAS поддерживает подходящую контейнерную среду и имеет достаточно ресурсов, Immich можно запустить в Docker. На слабых моделях практичнее использовать отдельный mini-PC, оставив Synology для хранения файлов.
Можно ли хранить фотографии на NAS, а Immich запустить на другом компьютере?
Да. Это распространённая архитектура. PostgreSQL лучше оставить на локальном SSD сервера Immich, а большой media storage разместить на подходящем хранилище с корректным mount и резервированием.
Можно ли автоматически загружать фото с iPhone?
Да. Immich поддерживает mobile backup на iOS. Для фоновой работы должен быть разрешён Background App Refresh, а время запуска фоновых задач контролирует сама iOS.
Можно ли автоматически загружать фото с Android?
Да. Можно выбрать albums и условия backup. Если загрузка не работает в фоне, нужно проверить battery optimization конкретного производителя телефона.
Immich удаляет фотографии с телефона после загрузки?
В приложении есть отдельные функции освобождения места, но применять их стоит только после проверки server copy и независимого backup. Не следует считать один сервер достаточным основанием немедленно удалить все оригиналы с телефона.
Можно ли подключить старую папку фотографий без переноса?
Да, через External Library. Для первого подключения существующего архива разумно использовать read-only mount.
Нужен ли GPU для распознавания лиц?
Нет. Machine Learning может работать на CPU. Аппаратное ускорение полезно для больших библиотек и ускорения обработки, но не обязательно для обычного домашнего запуска.
Что обязательно резервировать?
Оригинальные фотографии и видео плюс PostgreSQL database. Встроенный database backup не содержит медиаданные.
Можно ли использовать RAID вместо backup?
Нет. RAID помогает пережить некоторые отказы дисков, но не защищает от удаления, повреждения базы, ransomware, кражи NAS или других общих рисков.
Как безопасно открыть Immich из интернета?
Для личного доступа удобен VPN или Tailscale. Для публичного endpoint нужен правильно настроенный HTTPS reverse proxy, обновления и firewall. Прямой бесконтрольный port forwarding панели сервиса лучше не использовать.
Вывод
Immich превращает домашний NAS или сервер из обычной папки с JPEG в полноценную семейную фототеку: автоматическая загрузка с телефонов, timeline, albums, лица, OCR и интеллектуальный поиск.
Для надёжной системы лучше разделять вычисления и хранение: PostgreSQL и контейнеры размещать на быстром локальном SSD, а большой фотоархив - на подходящем HDD/NAS. На мощном NAS оба уровня можно объединить.
Самое важное - не путать удобство Immich с сохранностью данных. Фотографии и база должны резервироваться независимо по схеме 3-2-1, а восстановление стоит проверить до первой реальной аварии. Тогда self-hosted фототека становится не экспериментом, а нормальной частью домашней инфраструктуры.
