Задать вопрос
@bozuriciyu

Почему проксирование прокси не работает?

Есть imgproxy - микросервис, запущенный в докере на порту 13333. Его я успешно проксирую нджинксом.

server {
  listen 80;
  server_name imgproxy-server.loc;

  location / {
    proxy_pass http://127.0.0.1:13333;
    include proxy_params;
  }
}


По урл типо imgproxy-server.loc/image.jpg все работает ок. Напрямую 127.0.0.1:13333/image.jpg тоже все ок.

Теперь я пытаюсь в другом нджинкс конфиге проксировать этот прокси imgproxy-server.loc, но увы, не работает.

upstream imgproxy {
  server imgproxy-server.loc;
}

server {
  listen 80;
  server_name example.loc;

  location /images {
    proxy_pass http://imgproxy;
    include proxy_params;
    # proxy_pass http://127.0.0.1:13333; # работает ок
    # include proxy_params; # работает ок
  }
}


Что не так и как исправить? В логах вижу ошибки:

- failed (24: Too many open files) (вычитал что проблема с worker_rlimit_nofile)
- worker_connections are not enough while connecting to upstream (когда полез играть с worker_rlimit_nofile)
- failed (111: Connection refused)

Исправить не получилось, а глубже лезть стало стремно)
  • Вопрос задан
  • 269 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
ky0
@ky0 Куратор тега Nginx
Миллиардер, филантроп, патологический лгун
Допишите на внутреннем нгинксе в список имён example.loc или переназначайте заголовок Host.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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