Задать вопрос
Strelok13
@Strelok13
КИПиА, металлообработка.

Как решить проблему с Immich после подключения обратного прокси?

Доброго времени суток.
Вводная:
Имеется виртуалка с Ubuntu 24.04.1 LTS на борту, был установлен Immich, через Docker compose.
4 месяца полёт был нормальный, фото отлично улетали на сервер и обрабатывались, доступ был через IP:2283
Вчера решил стать на путь истинный и настроил себе обратный прокси через Nginx с конфигом ниже и сертификатами через certbot.

server {
listen 80;
server_name immich.[domain].ru; //естественно домен указан мой
# Проксирование на Immich VM
location / {
proxy_pass 192.168.0.190:2283;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
location ~ /\. {
deny all;
}
client_max_body_size 10G; # Для медиафайлов
}

И всё посыпалось и Nextcloud на соседней ВМ и Immich.
Nextcloud победил тем, что, по советам с форумов, добавил в config.php строчку 'overwriteprotocol' => 'https'
А вот Immich начал выдавать серию разных ошибок:
1. При попытке входа из Андроид приложения "Server is not reachable"
2. При входе из браузера всё вроде работает, но внизу висит плашка "Сервер не в сети Неизвестно"
3. После входа через браузер, ошибка в приложении изменилась и теперь висит плашка "Your app major version is not compatible with server", а при попытке войти "Ошибка при входе, проверьте URL-адрес сервера, адрес электронной почты и пароль".
Ни приложение, ни сервер не обновлял. ошибка в п1. возможно была вызвана резкой загрузкой 16Гб файлов из Nextcloud'а и не вытянул роутер, т.к. в этот момент я не мог зайти даже на вебморду Proxmpx'а.

В чем может быть проблема?

Заранее извиняюсь, я айтишник не настоящий, только учусь.
С моей, аматорской, точки зрения, мне видится, что, так же как и с Nextcloud, пошло что-то не так со сменой HTTP на HTTPS, но знаний и информации на форумах, увы не хватает, что бы понять что именно пошло не так. Смущает только строчка в конфиге Nginix proxy_pass 192... возможно она должна иметь приставку https?
Если необходимо подгрузить какие-то логи, просьба тыкать меня носом в конкретную команду, через которую их можно получить, повторюсь, я не совсем деревянный, но знаний немного, увы.
  • Вопрос задан
  • 16 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Если раньше трафик приходил на порт 2283 с SSL - то и обратный Nginx должен listen 2283 ssl;, логично же! Разумеется Nginx-у тоже придётся использовать ssl_certificate/ssl_certificate_key.
P.S. И да, proxy_pass https://192...:2282/, как иначе-то?
Ответ написан
1. Ничего не случилось, никто не "посыпался".
2. Схема такова: Caddy (Nginx) слушает SSL, расшифровывает его, и нешифрованный траффик шлёт на Immich. После такой настройки у меня работало приложение, однако траффик из локальной сети шёл на VPS, а оттуда обратно. Что, конечно, не очень.
Для приложения Home Assistant есть раздельное указание разных адресов в зависимости от того, в какой сети Wi-Fi вы находитесь, это прям супер решение. Хорошего решения с обратным прокси и SSL я не нашёл.
У Caddy по этому вопросу есть целая глава: SSL в LAN, но я не осилил.
3. certbot с плагином cetrbot-nginx должен был автоматически поправить конфиг Nginx для поддержки SSL, но в приведённом вами конфиге этого нет. Кстати, вставляйте конфиги кодом, чтобы сохранять форматирование.

PS. Caddyfile для Immich:
{
    email	myemail@....com
}

im.mydomain.ru {
	reverse_proxy 192.168.5.41:2283
	// возможно, слегка подтюнить   
}


PPS Вы для обучения (?) занимаетесь установкой конкретного прикладного ПО. Установка которого не является проблемой вообще (docker и поехали), но является огромной проблемой их поддержка и администрирование. В частности, бекап и последующее восстановление, если всё это грохнется (а Immich и Nextcloud грохнутся, и сделают это с потерей данных). Я это тоже пробовал и понял, что обучаться нужно более фундаментальным вещам.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы