Как нам следует настроить обратный прокси-сервер nginx для приложений spring boot docker?

#spring-boot #docker #nginx #docker-compose #nginx-reverse-proxy

#spring-boot #docker #nginx #docker-compose #nginx-reverse-proxy

Вопрос:

У меня есть два приложения spring boot и веб-сервер nginx. Эти приложения работают с docker-compose. Я хочу запускать свои приложения в 9000, 9001, 9002 портах соответственно. (nginx -> 9000, spring-boot-app1 -> 9001, spring-boot-app2 -> 9002)

spring-app1 должен быть доступен из браузера по адресуhttp://localhost:9000 / и spring-app2 должны быть доступны из браузера по адресу http://localhost:9000/ui

В соответствии с этим, как настроить nginx?

Структура папок проекта

 |── ...

│── nginx                    
   ├── default.conf          
   ├── Dockerfile   

├── web-static                    
   ├── src          
   ├── pom.xml
   ├── Dockerfile 

├── web-ui                    
   ├── src          
   ├── pom.xml
   ├── Dockerfile 

├── docker-compose.yml
  

docker-compose.yml

 version: '3'
services:

  proxy:
    container_name: proxy
    build: ./nginx
    image: proxy
    ports:
        - "9000:80"

  service1:
    container_name: service1
    build: ./web-static
    image: service1
    ports:
        - "9001:9000"

  service2:
    container_name: service2
    build: ./web-ui
    image: service2
    ports:
        - "9002:9000"
  

файл nginx.conf

 server {
    listen 80;

    location / {
      proxy_pass http://service1:9000;
    }

    location  /ui {
      proxy_pass http://service2:9000/;
    }        
}
  

Я внес некоторые изменения в файл конфигурации Nginx. Однако css, файлы изображений и запрос работают некорректно и не отображаются.
Пример запроса: Мой запрос «localhost: 9000 / ui / ?form». Но localhost: 9000 отвечает на запрос. Я этого не хочу.

  1. Вкратце, я хочу, чтобы spring-boot-app1 был доступен из браузера по адресу localhost: 9000/
  2. spring-boot-app2 должен быть доступен из браузера по адресу localhost: 9000 / ui/
  3. Я хочу, чтобы он работал независимо сам по себе.

Комментарии:

1. У меня похожая проблема, вы нашли решение?