Docker Compose — рекомендуемый метод для запуска Immich в рабочей среде. Ниже приведены шаги по развертыванию Immich с помощью Docker Compose.
Для Immich требуется Docker Compose версии 2.x.
Шаг 1 — Загрузите необходимые файлы
Создайте каталог по вашему выбору (например, ./immich-app
) для хранения файлов docker-compose.yml
и .env
.Переместите в созданный вами каталог
mkdir ./immich-app
cd ./immich-app
Загрузите на сервер файлы docker-compose.yml и example.env, либо выполните следующие команды, чтобы загрузить файл:
Загрузка файла docker-compose.yml
wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
Получить файл .env
wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env
(Необязательно) Получить hwaccel.перекодирование.yml-файл
wget -O hwaccel.transcoding.yml https://github.com/immich-app/immich/releases/latest/download/hwaccel.transcoding.yml
(Необязательно) Получить файл hwaccel.ml.yml
wget -O hwaccel.ml.yml https://github.com/immich-app/immich/releases/latest/download/hwaccel.ml.yml
или загрузив файлы из вашего браузера и переместив их в созданный вами каталог.
Примечание: После того, как вы загрузили файлы из своего браузера, необходимо переименовать их example.env
в .env
.
Шаг 2 — Заполните env-файл пользовательскими значениями
Пример .env
содержимого
- Укажите
UPLOAD_LOCATION
предпочтительное местоположение для хранения резервных ресурсов. - Подумайте о замене
DB_PASSWORD
на что-то случайно сгенерированное
Пример файла:
UPLOAD_LOCATION=./library
IMMICH_VERSION=release
DB_PASSWORD=postgres_pass
The values below this line do not need to be changed
######################################################
DB_HOSTNAME=immich_postgres
DB_USERNAME=postgres
DB_DATABASE_NAME=immich
REDIS_HOSTNAME=immich_redis
Файл должен находиться в той же директории, что и файл docker-compose.yml
Шаг 3 — Запуск контейнеров
Из каталога, созданного вами на шаге 1 (который теперь должен содержать ваши настроенные docker-compose.yml
и .env
файлы) запустите docker compose up -d
.
Запустите контейнеры с помощью команды docker compose
docker compose up -d
Начнется загрузка образа Docker. По окончании вы должны увидеть экран, похожий на приведенный ниже, информирующий вас о том, что ваша установка Immich успешно развернута и все контейнеры запущены.
Теперь вы можете получить доступ к веб-интерфейсу Immich, перейдя по адресу «http://your-server-ip:2283» в вашем веб-браузере. Если вы получаете доступ к нему с той же машины, на которой запущены контейнеры, вы также можете использовать «http://localhost:2283».
Вы увидите приветственный экран Immich. Нажмите кнопку «Getting Started».
ВЕРСИЯ DOCKER
Если вы получили сообщение об ошибке unknown shorthand flag: ‘d’ in -d, вероятно, вы используете неправильную версию Docker. (Это происходит, например, с пакетом docker.ввода-вывода в Ubuntu 22.04.3 LTS.) Вы можете исправить проблему, apt remove установив пакет docker.ввода-вывода в Ubuntu или переустановить docker и docker-compose через официальный репозиторий Docker.
Обратите внимание, что правильная команда на самом деле docker compose
, а не docker-compose
. Если вы попробуете последнюю в ванильной Ubuntu 22.04, она завершится с ошибкой другим способом:
The Compose file './docker-compose.yml' is invalid because:
'name' does not match any of the regexes: '^x-'
Смотрите предыдущий параграф об установке из официального репозитория docker.
СОВЕТ
Для получения дополнительной информации об использовании приложения, пожалуйста, обратитесь к руководству после установки.
АУТЕНТИФИКАЦИЯ НА GITHUB
Для загрузки образов контейнеров может потребоваться аутентификация в реестре контейнеров GitHub (шаги здесь).
Шаг 4 — Обновление
ОСНОВНЫЕ ИЗМЕНЕНИЯ
Важно следить за последними обновлениями, чтобы избежать проблем. Вы можете просмотреть версии, в которые были внесены последние изменения здесь.
Если параметр IMMICH_VERSION
установлен, его необходимо будет обновить до последней или желаемой версии.
После выпуска новой версии Immich, приложение можно обновить с помощью следующих команд, запускаемых в каталоге с docker-compose.yml
файлом:
Обновить Immich
docker compose pull && docker compose up -d
АВТОМАТИЧЕСКИЕ ОБНОВЛЕНИЯ
Immich в настоящее время находится в стадии интенсивной разработки, а это означает, что вы могут происходить частые критические изменения и исправления ошибок. Поэтому мы рекомендуем ознакомиться с примечаниями к выпуску перед обновлением и соблюдать особую осторожность при использовании автоматизированных инструментов.
Добрый день. Я поставил Immich на системный ssd диск c Ubuntu и некоторое время пользовался, результатом чего стала небольшая база фоток. Недавно пробрел пару дисков побольше и создал raid. Подскажите, как мне теперь перенести базу на новый диск и сделать его основным для скачивания?
Сначала лучше сделать бэкап всего диска, после этого можно попробовать выбрать один из двух вариантов, а лучше оба:
1. Сделать бэкап базы с помощью pgdump, если выполнять в докер, то вот команда:
docker exec -t immich_postgres pg_dumpall —clean —if-exists —username=postgres | gzip > «/path/to/backup/dump.sql.gz»
и бэкап каталогов:
UPLOAD_LOCATION/library
UPLOAD_LOCATION/upload
UPLOAD_LOCATION/profile
Сприпт бэкапа.
2. Перенести хранилище:
Чтобы поменять диск для сохранения в Immich, можно следовать таким шагам:
Остановить весь стек.
Смонтировать новый диск.
Скопировать всю папку, указанную в UPLOAD_LOCATION.
Изменить переменную среды UPLOAD_LOCATION в файле .env на новую директорию.
Запустить стек Immich снова с помощью команды docker-compose up -d —force-recreate.
Проверить, доступны ли изображения через веб-интерфейс.
Удалить исходную папку.
Также можно переместить всю папку библиотеки на новый диск и создать символическую ссылку, которая будет указывать на новый путь к библиотеке.
Ещё одно решение — смонтировать другой раздел на жёстком диске большего размера непосредственно через папку /var/snap/immich-distribution/common/upload/. При этом нужно убедиться, что разрешения указаны правильно.
Вот есть не плохой мануал.