Есть 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)
Исправить не получилось, а глубже лезть стало стремно)