如何在VM(虚拟机)重启/启动时重新启动Java应用程序?

时间:2017-08-25 05:49:56

标签: java linux spring-boot virtual-machine

我正在使用java 1.8和spring-boot-starter-parent 1.5.6.RELEASE和swagger2 2.6.1。我们使用以下命令在VM中运行应用程序

array_from

我的应用程序在VM停止时停止。所以手动我需要启动我的应用程序。我不想手动这样做。我需要以编程方式重新启动我的应用程序,否则任何脚本都会这样做对我来说也没问题。

启动VM时如何重新启动应用程序?

请提供您的意见。

1 个答案:

答案 0 :(得分:0)

在使用systemd(官方文档here)(例如Debian,Ubuntu或Fedora)的Linux发行版中,创建service是简单:

我们需要创建一个服务文件,告诉systemd如何启动您的应用程序。在/etc/systemd/system中创建一个名为myApplication.service的文件,其中包含以下行:

[Unit]
Description="A description of what my application does"

[Service]
ExecStart=/path/to/java -jar /path/to/your/myApplication.jar

[Install]
WantedBy=multi-user.target

(源自an example in the docs。)

然后以root身份运行systemctl enable myApplication.service以启用它,这将使其在启动时运行。

你可以学到很多东西; systemd的文档非常好。您可以查看引入systemd的blog story,因为它提供了一些"销售宣传"它能做什么。