Я не могу понять, как работает обратный прокси-сервер nginx, может быть, кто-то может помочь.Допустим, мой сервер с докером в локальной сети имеет IP 192.168.0.3 У меня есть такой файл docker-compose:
version: '2'
angular-on-nginx:
build: angular_client
ports:
- "80:80"
volumes:
- ./angular_client/dist:/usr/share/nginx/html
- ./angular_client/default.conf:/etc/nginx/conf.d/default.conf
express:
build: express_server
ports:
- "4444:4444"
volumes:
- ./express_server/:/usr/src/app
links:
- database
depends_on:
- database
database:
image: mongo
ports:
- "27777:27777"
volumes:
- ./mongodb_data:/data/db
В контейнере angular-on-nginx есть приложение angular и nginx с такой конфигурацией:
server {
listen 80;
server_name localhost;
root /usr/share/nginx/html;
index index.html index.htm;
location / {
try_files $uri $uri/ /index.html;
}
location /express {
proxy_pass http://192.168.0.3:4000/;
}
}
но это не работает при наборе 192.168.0.3 угловое веб-приложение загружается просто отлично и работает.При наборе 192.168.0.3:4444 экспресс-сервер дает хороший ответ, но при наборе 192.168.0.3/express имеется 502 неисправных шлюза.Как сделать так, чтобы при вводе 192.168.0.3/express я получал тот же результат, что и при наборе 192.168.0.3:4444?