当前位置: 首页 > 知识库问答 >
问题:

如何在Google Cloud Compute Engine中部署Spring Boot应用程序?

皮景龙
2023-03-14

我是谷歌云平台的新手。我想在Compute Engine中部署我的Spring Boot项目,因为部署应用内引擎的成本比计算引擎高。YouTube/网站上有很多视频/文章可用于部署应用程序内引擎,但我没有找到任何关于在计算引擎中部署Spring Boot应用程序的教程。


共有1个答案

曹自怡
2023-03-14

下面是一篇关于如何在谷歌云计算引擎中使用嵌入式tomcat?部署Spring Boot应用程序的非常好的博客?。我只是简单介绍一下。

如果您想使用嵌入式tomcat服务器,那么PM2是管理Compute Engine中部署的最佳工具。PM2是JavaScript运行时节点的流程管理器。js。实际上,在没有PM2的情况下,你也可以通过执行命令mvn Spring--Boot:run直接部署Spring Boot应用程序,但问题是当你退出终端时,你的服务器也会关闭。在这里,您可以使用setsid mvn spring boot:run在后台执行命令。这将在后台执行你的Spring Boot应用程序,但当你需要重新启动服务器时,你会发现错误,比如Web服务器无法启动。端口8080已经在使用中

因此,您需要通过查找processId来终止现有的正在运行的应用程序。这不知怎么让人头疼。因此,我也建议您使用PM2。要安装PM2,你可以在ubuntu中使用这些命令。

curl -sL https://deb.nodesource.com/setup_10.x -o nodesource_setup.sh
sudo bash nodesource_setup.sh
sudo apt-get install html" target="_blank">nodejs
sudo npm install -g pm2

如果您想测试您的Spring Boot应用程序,您可以克隆或从您的Github存储库中提取项目,或者您可以从这里克隆Spring-boot-test项目。

git clone https://github.com/altafjava/spring-boot-test.git
cd spring-boot-test/

您必须创建一个. sh文件,该文件将被PM2用来重新启动服务器。在您的. sh文件中,您需要编写一个命令,该命令用于执行Spring启动项目,该项目只不过是mvn spall-start: run

echo "mvn spring-boot:run">server.sh
chmod +x server.sh

最后,使用命令pm2 restart server重新启动服务器。您甚至可以使用pm2 logs在运行时检查日志。

 类似资料:
  • 完成干净的构建后,我将war文件复制到Tomcat的文件夹中。但是部署会发生两次,并且在上下文已经存在的情况下以异常结束。我错过了什么? 非常感谢您的帮助。

  • 我似乎找不到任何关于如何在我的IBM Social Business SmartCloud站点中注册/部署应用程序的文档。这是在他们的云服务器上,而不是我自己的本地主机上。 我使用IBM SmartCloud Engage演示帐户订阅创建了一个Admin AppDeveloper用户帐户。我基本上是在尝试将HelloWorld iWidget添加到某个应用程序菜单中,但找不到注册/添加的位置,因此

  • 问题内容: 谁能帮助我在IIS 6上运行Flask应用程序?我曾尝试使用isapi-wsgi,但是当我访问虚拟目录地址时,会得到一个页面,显示“找不到指定的模块”。还有其他选择吗? 以下是我为isapi-wsgi编写的Python脚本。已创建虚拟目录,并且在IIS管理器中一切正常,但该站点无法正常工作。 问题答案: 高层概述 HTTP-> IIS-> ISAPI-> FastCGI-> WSGI(

  • 我想在服务器上部署一个spring mvc中的Java web app build。我使用的是MilesWeb服务器。在尝试将应用程序部署到服务器后,我收到了以下异常日志,描述如下:“服务器遇到内部错误,导致无法满足此请求”。我需要帮助来找出我做错了什么。 你可以检查这个链接后,点击提交我得到上面的错误

  • 我正在使用RAD和WAS7.0.23,并尝试在其中部署jax-rs。但是我在部署描述符(web.xml)中发现了以下错误。 错误404:javax.Servlet.unavailableException:SRVE0200E:Servlet[com.ibm.websphere.jaxrs.server.ibmrestServlet]:找不到所需的类-class java.lang.ClassNot

  • 尝试在Heroku云中部署Spring Boot应用程序,但编译java应用程序时出现错误,但在我的本地计算机中运行良好。

  • 问题内容: 事情是这样的:我需要采取一定的Java EE Web应用程序并将其部署到Amazon EC2上(我需要设置第一)从下月开始(使用http://aws.amazon.com/free/faqs/ AWS免费使用-希望它支持Tomcat + MySQL / PostgreSQL。 问题:我从未部署过Java EE应用程序(甚至没有在专用主机上安装 普通的 应用程序),也从未设置过Amazo