我有一个简单的CRUD spring Boot 应用程序,我想通过Beanstalk部署到AWS。
如果我按照默认步骤只选择自定义VPC -应用程序不工作。
如果我做同样的事情,并在env变量中设置SERVER_PORT:5000-应用程序正在工作,我可以使用我的API。
我有两个问题:
1.为什么我需要将SERVER_PORT设置为5000?
1.为什么它现在在端口80上工作,而不是8080,因为它是本地运行的默认端口?
我通过添加env变量解决了这个问题,但我想知道为什么我必须这样做。
我有一个简单的CRUD spring Boot 应用程序,我想通过Beanstalk部署到AWS。
如果我按照默认步骤只选择自定义VPC -应用程序不工作。
如果我做同样的事情,并在env变量中设置SERVER_PORT:5000-应用程序正在工作,我可以使用我的API。
我有两个问题:
1.为什么我需要将SERVER_PORT设置为5000?
1.为什么它现在在端口80上工作,而不是8080,因为它是本地运行的默认端口?
我通过添加env变量解决了这个问题,但我想知道为什么我必须这样做。
1条答案
按热度按时间r8uurelv1#
默认情况下,Sping Boot 侦听端口
8080
。但是,默认情况下,Elastic Beanstalk环境在端口80
上运行反向代理服务器,并将流量转发到端口5000
上的应用程序。因此,要将流量正确代理到应用程序,您必须修改反向代理以转发到端口8080
,或者只设置SERVER_PORT
环境变量(Sping Boot 自动检测,并用于配置它监听的端口)到端口5000
。更多细节请参见here。