
Привет! Сегодня вам расскажу, как я полностью отказался от Google Photos и настроил своё собственное хранилище фотографий на базе Immich с кучей функций, не уступающих тем, что есть у популярных представителей данных сервисов.
Это не обзор ради обзора, а мой реальный кейс. У меня дома стоит свой собственный домашний сервер, который я собрал не так давно, куда я уже перенес все свои фотографии и видео.
1 Почему я отказался от Google Photos
Когда-то я был доволен Google Photos и пользовался им на протяжении 7+ лет. У меня был семейный тариф на 200 ГБ за адекватные как по мне деньги. И сервис очень удобный, фото всегда под рукой, синхронизация с телефоном работает идеально. Но однажды лимит закончился, и Google предложил перейти на более дорогой тариф.
Цены конечно же стали менее комфортными, и тут я уже задумался, а не проще ли вложиться один раз в железо (жёсткие диски и сервер), чем годами платить подписку? Ведь кол-во фотографий и видео с каждым годом будет только расти. Но так же и не хотелось терять всех возможностей, которые предоставляет Google Photos.
Поэтому нужно было решение, которое хотя бы частично покрывает мои потребности:
-
Доступность с телефона
-
Синхронизация фото и видео
-
Распознавание лиц
-
Хранение файлов в файловой системе будещего собранного сервера
-
Не требует денег каждый месяц
В поисках альтернативы я наткнулся на open source проект Immich, который давно решает данные задачи и его можно запустить на собственном железе. И тогда я понял, это именно то, что я искал.
2 Что такое Immich
Immich – это полноценная альтернатива Google Photos.
Признаюсь, до знакомства с проектом я немного сомневался, всё-таки open source ассоциировался с «сухими» интерфейсами и минимумом удобств. Но мои опасения оказались напрасными, дизайн Immich приятно удивил – интерфейс выглядит современно, а пользоваться им действительно удобно.
Команда разработчиков проделала огромную работу, и за это им хочется сказать отдельное большое спасибо.
Что проект уже умеет:
-
Автоматически синхронизирует фото с телефона
-
Узнаёт лица и группирует фото по людям
-
Поддерживает альбомы, поиск (по английски), карту, таймлайн
-
Доступен с любого устройства (веб, Android, iOS)
-
Работает быстро и стабильно, даже с десятками тысяч фото
-
Поддерживает локальное хранилище, можно держать оригиналы фото и видео прямо на своём диске, без ограничений
3 Интерфейс и возможности
Для начала покажу, как выглядит мобильное приложение.
Оно простое и удобное, а весь основной функционал доступен прямо с телефона:
📱 Внешний вид мобильного приложения

А дальше для демонстрации возможностей перейдем к веб-версии Immich. Она почти не отличается от мобильной, но именно здесь доступны дополнительные и административные функции. Пройдёмся по основным разделам без излишних подробностей, этого хватит, чтобы оценить функциональность и понять, на что способен immich.
3.1 📸 Галерея в веб-версии Immich

Видно, как Immich организует фотографии в привычном таймлайне, снимки автоматически группируются по датам, и можно быстро перемещаться между годами и месяцами. Слева находится боковое меню с основными разделами: поиск, карта, люди, публичные ссылки, альбомы, архив, корзина и утилиты. В нижней части – информация о доступном месте на диске и версия сервера.
3.2 🔍 Страница поиска

На скриншоте показана страница поиска. Здесь сервис автоматически группирует найденные результаты:
-
Люди – Immich определяет лица на фотографиях и позволяет их переименовать, чтобы удобнее искать в будущем.
-
Места – снимки автоматически распределяются по геолокации: города, районы и даже конкретные точки.
Таким образом, можно быстро найти нужные фото по человеку или месту, даже если у вас десятки тысяч файлов.
3.3 🔍 Демонстрация работы поиска

На скриншоте показан результат запроса «gray t-shirt». Immich не просто находит совпадения, но и сортирует результаты по релевантности, в самом верху отображаются фото, которые наиболее точно соответствуют запросу. В случае с видео, поиск идет по превью.
В моём случае первым в выдаче оказалось видео с серой футболкой. Такой подход делает поиск максимально удобным – нужный результат чаще всего оказывается в первых строках.
> 💡 Это особенно полезно, когда у вас десятки тысяч фотографий, и пролистывать их вручную просто нереально.
3.4 🗺️ Карта

Один из самых наглядных способов путешествовать по своим воспоминаниям – это карта. На скриншоте видно, как Immich группирует фотографии по геолокации: каждая цифра в кружке показывает количество снимков, сделанных в определённом регионе.
При увеличении масштаба кластеры раскрываются, и можно вплоть до улицы увидеть, где именно был сделан кадр.
Например, все фотографии из поездки в Казань собраны в один кластер, а снимки из Москвы – в другой.
Это особенно удобно для тех, кто часто путешествует: достаточно открыть карту, чтобы вспомнить поездку в нужное место, и Immich сам покажет все фото, сделанные там.
> 💡 Но на фоне того, что в Москве глушат сеть, у меня вышло так, что некоторые фотографии тянуться аж до Шереметьево)
Фотографии, тянущиеся до Шереметьево

3.5 🙂 Вкладка «Люди»

Immich автоматически анализирует фотографии и группирует их по лицам. На скриншоте видно, как сервис выделяет каждого человека в отдельный блок.
Пользователь может:
-
присвоить имя человеку
-
объединить несколько группировок, если сервис ошибочно разделил одно и то же лицо
-
выбирать фотографию на превью человека
Эта функция особенно ценна, если у вас много фотографий с друзьями или семьёй, достаточно один раз подписать человека, и Immich сам будет добавлять новые фото в его коллекцию.
3.6 📂 Альбомы

На скриншоте показан раздел «Альбомы». Здесь фотографии и видео можно объединять в коллекции по событиям, темам или датам.
Immich поддерживает:
-
группировку альбомов по годам
-
создание как личных, так и общих альбомов
-
гибкое управление – можно редактировать название, описание и открывать доступ другим пользователям или по публичной ссылке.
Это удобно, когда хочется быстро вернуться к какому-то событию, не листая весь таймлайн.
Чтобы поделиться доступом к альбому, предусмотрено создание публичных ссылок, где есть много параметров для гибкой настройки
Создание публичной ссылки

3.7 🛠️ Утилиты для работы с фото и видео

Immich позволяет не только хранить фотографии, но и поддерживать порядок в коллекции. В разделе «Утилиты» доступны полезные инструменты:
-
Разбор дубликатов – поиск одинаковых файлов. Можно оставить одну копию или сгруппировать фото, что особенно актуально после импорта фото из разных источников (например, Google Photos и мессенджеров).
-
Обзор больших файлов – быстрый способ найти «тяжёлые» фото и видео, которые занимают много места. Удобно, если хранилище ограничено по объёму.
-
Управление местами съёмки – позволяет редактировать или корректировать геоданные. Это полезно, если координаты были записаны неверно или отсутствуют.
Разбор дубликатов

Обзор больших файлов

Управление местами съемки

3.8 👤 Управление учётной записью в Immich

В разделе настроек Immich собраны все ключевые параметры, связанные с управлением аккаунтом и персональными возможностями. Раздел довольно обширный, поэтому советую пройтись по нему самостоятельно и выбрать то, что пригодится именно вам.
3.9 ⚙️ Администрирование сервера
Помимо пользовательских функций, Immich предоставляет полноценный раздел для администрирования сервера. Здесь представлено следующее:
-
управление пользователями
-
выполнение задач
-
настройки сервера
-
работа с внешними библиотеками
-
мониторинг статистики.
👥 Вкладка «Пользователи»

Здесь администратор может добавлять новых участников, редактировать их данные, ограничивать объём хранилища или сбрасывать пароль и PIN-код. Это удобно, если Immich используется не только вами, но и вашими знакомыми.
⚡ Вкладка «Задачи»

Immich автоматически выполняет множество процессов в фоне:
-
создаёт миниатюры
-
извлекает метаданные
-
индексирует файлы для поиска и т.д.
Всё это можно контролировать во вкладке «Задачи».
У каждой задачи есть статус: выполняется ли она сейчас, сколько элементов в очереди и сколько уже обработано. При необходимости можно запускать задачи вручную или регулировать параллельность их выполнения, если нужно ускорить обработку при первичной загрузке большой фотоколлекции.
📊 Статистика сервера

Эта вкладка позволяет администратору получить полное представление о том, как используется хранилище Immich. В верхней части отображается общая статистика:
-
количество загруженных фото
-
количество видео
-
общий объём занятого дискового пространства.
Ниже приведена детализация по каждому пользователю:
-
сколько фотографий и видео он загрузил
-
общий объём файлов, – текущее использование квоты (если она была ограничена).
4 Как установить Immich
Теперь давайте посмотрим, как развернуть Immich у себя. Процесс установки достаточно простой: понадобится сервер с Docker и несколько базовых настроек. Вся установка займёт 10–15 минут.
Вы можете самостоятельно установить immich по инструкции у них на сайте https://docs.immich.app/overview/quick-start/. Но так же продублирую его тут, если кто-то сомневается.
Для запуска Immich необходимо минимум 2 CPU и 4 ГБ RAM.
Если у вас уже есть домашний сервер или VPS, скорее всего, этого будет достаточно.
4.1 Подготовка окружения
Создадим рабочую директорию, куда положим файлы конфигурации:
mkdir ./immich
cd ./immich
Дальше скачиваем docker-compose.yml и пример .env:
wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env
4.2 Настройка .env
В .env меняем эти основные параметры:
# Путь, где будут храниться фото
UPLOAD_LOCATION=./library
# Путь для базы данных (Postgres)
DB_DATA_LOCATION=./postgres
# Часовой пояс
TZ=Europe/Moscow
# Версия Immich
IMMICH_VERSION=release
# Пароль для базы данных
DB_PASSWORD=postgres
4.3 Запуск контейнеров
Запускаем Immich командой:
docker compose up -d

После скачивания образов сервис будет доступен по адресу http://<ip-сервера>:2283.
4.4 Создание учётной записи администратора
При первом входе Immich предложит зарегистрировать админ-аккаунт. Этот пользователь сможет:
-
добавлять других пользователей,
-
управлять хранилищем,
-
настраивать сервер.

Нужно не забывать про бэкапы!
Важно понимать
-
база данных хранит только метаданные (имена, даты, альбомы),
-
сами фото лежат в папке
UPLOAD_LOCATION. Поэтому для надёжности нужно делать резервное копирование этой папки (например, с помощью rsync или ZFS снапшотов).
5 Как перенести фото из Google Photos
Я переносил ~70 ГБ фотографий и видео из Google Photos в Immich, и это оказалось проще, чем мне казалось.
Эта инструкция подойдёт и для iCloud, принцип тот же.
1 Получить архив из Google Takeout
-
Заходим в Google Takeout, выбираем «Google Фото»
-
Скачиваем архивы
.zip– в них фото и.jsonс метаданными
2 Переименовать .json
По умолчанию метаданные лежат в отдельных файлах. Будет проще, если .json будут называться точно так же, как файл фото/видео.
Используем такой скрипт:
find . -type f -name '*.json' | while read -r f; do
nojson="${f%.json}"
original=$(echo "$nojson" | sed -E 's/(.*.[a-zA-Z0-9]+)(..*)?$/1/')
if [ -f "$original" ]; then
new_json="${original}.json"
mv "$f" "$new_json"
echo "[OK] $f → $new_json"
else
echo "[SKIP] $f — оригинал '$original' не найден"
fi
done
3 Применить метаданные: даты, геолокация и т.п.
Для этого понадобится консольная утилиа exiftool (необходимо установить отдельно):
find . -type f ( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.gif" -o -iname "*.mp4" ) | while read f; do
j="$f.json"
if [ -f "$j" ]; then
photo=$(grep '"photoTakenTime"' "$j" -A3 | grep '"timestamp"' | head -n1 | sed -E 's/[^0-9]//g')
create=$(grep '"creationTime"' "$j" -A3 | grep '"timestamp"' | head -n1 | sed -E 's/[^0-9]//g')
if [ -n "$photo" ] && [ -n "$create" ]; then
exiftool -overwrite_original
"-DateTimeOriginal=$(date -r $photo '+%Y:%m:%d %H:%M:%S')"
"-CreateDate=$(date -r $photo '+%Y:%m:%d %H:%M:%S')"
"-FileCreateDate=$(date -r $create '+%Y:%m:%d %H:%M:%S')"
"-FileModifyDate=$(date -r $create '+%Y:%m:%d %H:%M:%S')"
"$f"
echo "[OK] Обновлён: $f"
else
echo "[WARN] Не удалось извлечь timestamp из $j"
fi
fi
done
4 Загрузить фото в Immich
Заходим в веб-интерфейс Immich и заливаем обработанные файлы.
Загрузка файлов

5 Восстановить альбомы
Google сохраняет структуру альбомов, но Immich не умеет подтянуть её автоматически.
Поэтому необходимо:
-
Создать каждый альбом вручную в интерфейсе.
-
Перетянуть нужные папки с фото и видео.
6 Настройка зеркалирования дисков через ZFS
Фото – это память. Потеря одного диска может стать катастрофой. Поэтому я сразу сделал зеркалирование с помощью ZFS.
1 Почему ZFS
-
выдерживает выход из строя одного диска
-
объём = размер одного диска (2×4 ТБ → 4 ТБ полезного)
-
встроенная проверка целостности
-
снапшоты и сжатие
-
работает напрямую с «сырыми» дисками
2 Конфигурация моего сервера
-
Ubuntu Server
-
2×4 ТБ HDD под зеркало
-
ОС на отдельном NVMe
3 Установка и настройка
sudo apt update
sudo apt install zfsutils-linux
Проверка:
zfs version
Находим диски:
lsblk -o NAME,SIZE,MODEL
Вывод:
NAME SIZE MODEL
sda 3,6T WDC WD43PURZ-74B
├─sda1 3,6T
└─sda9 8M
sdb 3,6T WDC WD43PURZ-74B
├─sdb1 3,6T
└─sdb9 8M
nvme0n1 119,2G SBSSD128-HLX-M2P3
├─nvme0n1p1 1G
├─nvme0n1p2 2G
└─nvme0n1p3 116,2G
└─ubuntu--vg-ubuntu--lv 58,1G
Находим два нужных диска (например: sda и sdb в моем случае)
⚠️ ВНИМАНИЕ: все данные на них будут удалены!
Создаём зеркало:
sudo zpool create tank mirror /dev/sda /dev/sdb
tank – это имя пула, можешь выбрать любое.
Теперь у нас будет надёжный ZFS-пул, работающий как RAID1.
Проверим пул:
zpool status
Вывод:
NAME USED AVAIL REFER MOUNTPOINT
tank 301M 3.51T 96K /tank
4 Расширение пула
Если нужно больше места – просто добавляем вторую пару дисков:
sudo zpool add tank mirror /dev/sdc /dev/sdd
ZFS сам расширит пул, объединив зеркала.
Какие диски подойдут:
-
Размер не меньше, чем у других пар в пуле
-
Лучше использовать одинаковые по размеру и скорости Пример: Уже есть зеркало 2×4 ТБ → добавляем новое зеркало 2×6 ТБ Общий объём пула станет 4 ТБ + 6 ТБ = 10 ТБ, т.к. ZFS просто складывает зеркала.
7 Финансовая выгода
Попробуем разобраться, во что реально обходится собственный сервер с Immich по сравнению с облачными хранилищами, и почему даже при всех нюансах это выгоднее, особенно в долгосрочной перспективе и с учетом использования полученного сервера под другие цели.
Без деталий рассчетов
|
Вариант |
2 ТБ (5 лет) |
6 ТБ (5 лет) |
Особенности |
|---|---|---|---|
|
Собственный сервер (Immich) |
≈36 132 ₽ |
≈45 132 ₽ |
Разовые вложения, свой RAID, резерв, приватность |
|
Google One |
34 950 ₽ |
— |
максимум 2 ТБ, зависимость от аккаунта Google |
|
iCloud+ |
35 940 ₽ |
209 400 ₽ |
высокая цена на 6 ТБ, только для Apple |
|
Яндекс.Диск 360 |
19 000 ₽ |
71 928 ₽ |
тарифы на 1 пользователя, ограниченные возможности совместного доступа |
Стоит отметить, что собственный сервер — это не просто альтернатива облаку, а полноценная платформа, которую можно развивать под свои нужды.
Он позволяет подключить любое количество пользователей — членов семьи, друзей или занкомых(возможн даже за определенную плату), без ограничений и дополнительных подписок. Кроме того, этот же сервер легко использовать для других задач: запуск Nextcloud, локальных бэкапов или систем автоматизации дома.
Таким образом, даже если экономия по цифрам выглядит незначительной, по возможностям и контролю личное решение по моему мнению выигрывает.
Рассчеты
1 Методика расчета
Для честного сравнения возьмём усреднённые параметры домашнего сервера (на базе Mini-PC или старого системного блока) и популярных облачных решений.
Горизонт расчёта — 5 лет.
Это типичный срок службы HDD, и именно столько в среднем работает сервер без серьёзных апгрейдов. Через 5 лет диски всё равно лучше поменять.
Надёжность:
Используем схему RAID1 (зеркало) + отдельный офлайн-бэкап.
Иными словами, чтобы хранить 1 ТБ данных безопасно, нужно 3 ТБ физического пространства:
-
2 ТБ — зеркалирование (RAID1)
-
+1 ТБ — резервная копия (например, на внешнем HDD или в облаке холодного хранения). Это увеличивает стартовые затраты, но сильно снижает риск потери данных.
2 Стоимость серверного решения
Электроэнергия
Глубокий анализ разных вариантов и характеристик мини пк выходит за рамки этой статьи, я беру средние цифры после небольшого личного ресерча.
Современный энергоэффективный Mini-ПК потребляет:
-
10–15 Вт в простое,
-
25–30 Вт под нагрузкой.
Возьмём среднее — 20 Вт в час.
За год:
0,02 кВт × 24 ч × 365 дн × 5 лет = 876 кВт·ч
При тарифе 7 ₽/кВт·ч — получаем ≈ 6 132 ₽ за 5 лет.
Базовая конфигурация без дисков
|
Компонент |
Описание |
Цена, ₽ |
|---|---|---|
|
Mini-ПК (Intel N100, 16 ГБ RAM, 2×SATA) |
готовое устройство (Beelink, Minisforum и аналоги) |
15000 |
|
Электроэнергия (5 лет) |
~876 кВт·ч × 7 ₽ |
6 132 |
|
Итого (без HDD) |
— |
≈ 21 132 ₽ |
Добавим стоимость дисков
|
Объём (чистый) |
Схема хранения |
Стоимость дисков |
Стоимость дисков и пк |
Ежемесячные затраты (5 лет) |
|---|---|---|---|---|
|
2 ТБ |
3×2 ТБ = 6 ТБ HDD × ≈ 5 000 ₽/шт |
15 000 ₽ |
21 132 + 15 000 = 36 132 ₽ |
≈ 586 ₽/мес |
|
6 ТБ |
3×6 ТБ = 18 ТБ HDD × ≈ 8 000 ₽/шт |
24 000 ₽ |
21 132 + 24 000 = 45 132 ₽ |
≈ 753 ₽/мес |
3 Стоимость облачных хранилищ
Для сравнения возьмём официальные цены облачных сервисов в 2025 году:
|
Сервис |
Объём |
Цена в год |
Цена за 5 лет |
Примечание |
|---|---|---|---|---|
|
Google One |
2 ТБ |
6900 ₽ |
34 950 ₽ |
– |
|
Google One |
6 ТБ |
– |
– |
максимум 2 ТБ |
|
iCloud+ |
2 ТБ |
7 188 ₽ |
35 940 ₽ |
– |
|
iCloud+ |
6 ТБ |
41 880 ₽ |
209 400 ₽ |
– |
|
Яндекс Диск 360 |
3 ТБ |
5 700 ₽ |
28 500 ₽ в пересчете на 2 ТБ ≈ 19 000 ₽ |
на 1 человека |
|
Яндекс Диск 360 |
5 ТБ |
11 988 ₽ |
59 940 ₽ в пересчете на 6 ТБ ≈ 71 928 ₽ |
на 1 человека |
Так же учтем, что в google и icloud можно пригласить лишь до 5-6 участников.
4 Сравниваем цены личного сервера и подписок
Рассматривая полученные цифры, ста��овится видно, что по чистым расходам личный сервер не всегда даёт большую экономию, особенно при небольших объёмах хранения. Однако ситуация меняется, если рассматривать большие объемы хранения.
|
Вариант |
2 ТБ (5 лет) |
6 ТБ (5 лет) |
Особенности |
|---|---|---|---|
|
Собственный сервер (Immich) |
≈36 132 ₽ |
≈45 132 ₽ |
Разовые вложения, свой RAID, резерв, приватность |
|
Google One |
34 950 ₽ |
— |
максимум 2 ТБ, зависимость от аккаунта Google |
|
iCloud+ |
35 940 ₽ |
209 400 ₽ |
высокая цена на 6 ТБ, только для Apple |
|
Яндекс.Диск 360 |
19 000 ₽ |
71 928 ₽ |
тарифы на 1 пользователя, ограниченные возможности совместного доступа |
Что сразу бросается в глаза? При 2 ТБ затраты на собственный сервер практически равны стоимости подписки Google или iCloud, а при 6 ТБ выгоднее собрать собственное решение.
Главное различие в том, что:
-
облачные подписки нужно платить постоянно, иначе доступ к данным может быть ограничен
-
возможны блокировки иностранных сервисов
-
сервер — это капитальное вложение, вы платите один раз, а пользуетесь сколько угодно лет.
-
чем больше объем, тем выгода существенней.
Кроме того, свой Immich-сервер не имеет искусственных ограничений, можно подключить любое количество пользователей и не зависеть от чужих политик.
А если добавить, что тот же сервер можно использовать для других сервисов (Nextcloud, резервные копии и т.д.), становится понятно, что реальная ценность личного решения гораздо выше простой арифметики.
Затраты на мой сервер
Я не покупал готовое решение, а собирал полноценный ПК(коробка).
Характеристики вышли следующие:
-
14 ядер, 28 потоков
-
оперативка 64 ГБ
-
Системный диск — NVMe 128 ГБ
-
Хранилище — 2×HDD по 4 ТБ (под бекапы пока что не закладывался) Собирал с запасом, чтобы развернуть на сервере все, что душе угодно, не спотыкаясь в системные ограничения, образная песочница для экспериментов.
Посчитаем затраты
-
Электроэнергия: среднее потребление возьмем под мою сборку – 90 Вт в час, сервер не всегда под нагрузкой. В сутки это 2.16 кВт, за 5 лет накапает 3 942 кВт. По средней цене 7.16 ₽/кВт⋅ч (для моего случая). Итого за 5 лет я заплачу 28 100 руб, в год это 5 620 руб.
-
Сборка обошлась в 40 000 руб. На диски ушло 12 000 руб за штуку, итого 24 000 руб на диски.
Итого выходит за 5 лет – 68 100 руб.
Тут подробнее про мою сборку – https://t.me/miheev_83/48
Итог
Если коротко — личный сервер с Immich выгоден на дистанции.
При 2 ТБ расходы сопоставимы с подписками Google или iCloud, но уже при 6 ТБ и выше свой сервер обходится дешевле.
При этом вы получаете полный контроль над данными, не зависите от политик и тарифов облаков и можете использовать сервер для других задач — от Nextcloud до резервных копий.
Один раз заплатил и пользуешься годами.
Пока он не сломался или не сгорел) Но это уже выходит за рамки этой статьи.
8 Итоги
-
Immich полностью заменил мне Google Photos.
-
Все фото хранятся у меня.
-
Данные защищены ZFS-зеркалом.
-
Перенос из Google Photos оказался проще, чем я думал.
Если устали платить за облако, то попробуйте Immich.
9 Полезные ссылки
-
Официальный сайт Immich https://immich.app/
-
Демо-версия https://demo.immich.app/auth/login
-
Мой домашний сервер https://t.me/miheev_83/48
Контакты для связи:
Тг: https://t.me/Mihey_83
Тг канал: https://t.me/miheev_83
Автор: mihey_83


