amazon-web-services - 我们不能在tomcat下的aws服务器上部署多个spring boot应用程序吗?
问题描述
我有 3 个 Spring Boot 应用程序,并希望全部部署在单个 EC2 实例上。
当我尝试在 tomcat/webapps 下部署 war 和部署时,某些应用程序将无法工作,因为 spring boot 中的嵌入式 tomcat 使用端口 8080,而 tomcat 中存在的其他 web 应用程序停止工作。
我尝试过的其他选项是使用 java -jar app.jar 更改运行 jar 的 application.properties 文件中的 server.port。
如果我想运行一个应用程序并且如果我按 cntrl+c 或 cntrl+z 或关闭终端(关闭 ssh 连接)正在停止应用程序,这仅适用于一个应用程序。
当我在搜索过程中发现我们可以使用 AWS Elastic Beanstalk 进行操作时。但我已经创建了一个免费层级 ec2 实例,有什么方法可以让它在不更改实例的情况下工作。
有人可以帮我吗?谢谢
解决方案
如果您想使用 java -jar app.jar
添加&
到最后允许进程在后台运行来运行您的应用程序。
使用该命令java -jar app.jar &
,您可以在后台运行多个应用程序。这将返回一个 pid “进程 ID”
您可以稍后使用此 pid 杀死应用程序kill -9 <pid>
要检查您可以使用的正在运行的进程ps aux | grep java
(我们正在搜索包含“java”的任何内容)
为了在 tomcat 上运行多个战争,将多个应用程序显式部署到 Tomcat
推荐阅读
- time-complexity - 计算函数 f2 的时间和空间复杂度
- mysql - 存储电子商务商店项目点击数据的选项
- python - PyTorch Tensor.index_select() 如何评估张量输出?
- python - 如何等待元素中元素和特定文本的存在?
- javascript - 在 sweetalert 2 的同一行中对齐标签并选择下拉菜单
- angular - 在 ngx-bootstrap daterangepicker 中选择第一个日期时触发事件
- javascript - Onchange 选择框显示输入框使用jQuery
- android - 在屏幕旋转时保留片段数据
- reactjs - 如何在画布中添加项目文件夹的本地图像?
- react-native - 深度链接启动应用程序,但错误地处理外部 URL