// Редактировать после публикации вопроса
Моя проблема заключалась в том, что все докеры находились в одной сети, потому что я также хотел докеризировать прокси-сервер, а ему нужно было получить доступ ко всем докерам для прокси-запроса.
Это так. не имел ничего общего с PROXY
Так что я точно не знаю, почему, но тот факт, что они были в одной сети докеров, даже при использовании открытых портов, балансировал нагрузку во всех моих приложениях
Я пытаюсь настроить обратный прокси для локальной разработки для своей команды. У нас есть 3 приложения Laravel, которые хорошо работают в докере, сопоставленном с другим портом на хосте.
результаты docker ps:
a1741218e399 nginx "/docker-entrypoint.…" 5 seconds ago Up 3 seconds 0.0.0.0:8087->80/tcp qbo
175b5133fd82 nginx "/docker-entrypoint.…" 8 seconds ago Up 7 seconds 0.0.0.0:8086->80/tcp apiv2
56c485f51700 nginx "/docker-entrypoint.…" 41 seconds ago Up 39 seconds 0.0.0.0:8085->80/tcp apiv1
Все хосты указаны в /etc/hosts
127.0.0.1 api.lan
127.0.0.1 api2.lan
127.0.0.1 qbo.lan
Nginx установлен на моей машине со следующей конфигурацией
# Api v1
upstream api.lan {
server localhost:8085;
}
server {
server_name api.lan;
listen 80;
location / {
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;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://api.lan;
proxy_redirect off;
}
}
# Qbo
upstream qbo.lan {
server localhost:8087;
}
server {
server_name qbo.lan;
listen 80;
location / {
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;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://qbo.lan;
proxy_redirect off;
}
}
# Api v2
upstream api2.lan {
server localhost:8086;
}
server {
server_name api2.lan;
listen 80;
location / {
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;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://api2.lan;
proxy_redirect off;
}
}
Вот моя проблема: при попадании в любой из трех доменов происходит балансировка нагрузки между этими тремя приложениями.
Самое странное, что помимо этих приложений у меня также были хорошо запущены фронтальные приложения v1 и v2 на другом порту с аналогичной конфигурацией для прокси без каких-либо проблем с балансировкой нагрузки. Если у кого-то есть предложение, чтобы помочь мне решить эту проблему