我有一堆在唯一端口中运行的spring boot microservices。我们如何在生产中处理这些微服务?

在生产中,我们只需要DNS,我们如何处理DNS映射。

例如:
example-microservice-1(端口:8001)
example-microservice-2(端口:8002)
example-microservice-3(端口:8003)
example-microservice-4(端口:8004)
example-microservice-5(端口:8005)

我想要下面这样的东西
myprod.com/example-microservice-1
myprod.com/example-microservice-2 ...

代替,
myprod:8001 / example-microservice-1
myprod:8002 / example-microservice-2

(由于声誉降低,已将上面的“ https / http”删除)

所有微服务都存在于不同的代码库中,并且在构建时将创建单个可运行的jar。

最佳答案

只需安装nginx并为您的微服务做一个反向代理。

nginx示例:

server {
    listen 80 default_server;
    server_name myprod.com;
    location /example-microservice-1 {
        proxy_pass http://localhost:8001;
        proxy_set_header Host      $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
    location /example-microservice-2 {
        proxy_pass http://localhost:8002;
        proxy_set_header Host      $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

07-24 21:15