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

Spring boot应用程序即服务VM选项

亢保赫
2023-03-14

我有一个Spring Boot应用程序,它使用Linux的systemd作为服务启动。

它基于以下文档:http://docs.spring.io/spring-boot/docs/current/reference/html/deployment-install.html

使用默认脚本,jar文件将启动。它很好用。

/etc/systemd/system/myapp.service:

[Unit]
Description=myapp
After=syslog.target

[Service]
User=myapp
ExecStart=/var/myapp/myapp.jar
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target

现在我想在jar启动时添加VM Option。我试图将. conf文件添加到项目中,但它不起作用。

/var/myapp/myapp.conf:

JAVA_OPTS=-Xms256M -Xmx512M

如何添加JVM选项以使用systemd启动应用程序?

共有3个答案

爱琪
2023-03-14

另一个好方法是创建一个配置文件myapp。conf与myapp位于同一目录下。jar文件

/var/myapp/

并把以下内容:

JAVA_OPTS="-Xms256m -Xmx512m"

然后重新启动应用程序。

请注意,配置文件的名称应与jar文件相同,但扩展名为。conf而不是。jar。战争

这种方式还有其他一些优点:

  • 仅将myapp应用程序的设置分开保存
  • 我们也可以在文件中添加其他参数

更多细节可以在这里找到。

云远
2023-03-14

根据文档,只要添加一个环境变量JAVA_OPTS,就可以了。

对于您的项目,我们使用自定义环境变量和systemd启动应用程序的方式如下所示:

[Unit]
Description=myapp
After=syslog.target

[Service]
User=myapp
ExecStart=source /var/myapp/myapp.conf; java -jar /var/myapp/myapp.jar
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target

基本上直接采购ENV配置将向应用程序公开ENV变量

糜正业
2023-03-14

我终于在这里找到了一个解决方案:使用嵌入式tomcat启动Spring-boot应用程序时如何配置堆大小?

我的. conf文件的内容是错误的。我也需要写这个:

export JAVA_OPTS="-Xms256m -Xmx512m"

现在当我运行“service myapp start”时,它以良好的堆大小开始。

 类似资料:
  • 如何在Linux系统中很好地配置打包为可执行jar作为服务的spring boot应用程序?这是推荐的方法,还是我应该将这个应用程序转换成war并安装到Tomcat中? 目前,我可以从会话运行spring boot应用程序,这很好,但需要在服务器重新启动后手动启动。 如果我使用可执行jar的方法合适的话,我需要的是一般的建议/指导或示例脚本。

  • 问题内容: 如何在Linux系统中很好地配置打包为可执行jar作为服务的Spring Boot应用程序?是推荐的方法,还是应该将此应用转换为war并安装到Tomcat中? 目前,我可以从会话运行Spring Boot应用程序,这很好,但是需要在服务器重启后手动启动。 如果我使用可执行 jar的 方法正确,那么我正在寻找的是一般建议/指导或示例脚本。 问题答案: 以下内容适用于springboot

  • 我已经使用Spring初始值设定项、嵌入式Tomcat、Thymeleaf模板引擎和作为可执行JAR文件的包生成了一个Spring Boot web应用程序。 使用的技术: Spring启动2.0.0。M6,Java8, Maven 这是我的安全配置 在我的 但当我在http://localhost:1234/iberiaWebUtils,而不是去http://localhost:1234/ibe

  • 应用程序服务是一项基于 HTTP 的服务,用于托管 Web 应用程序、REST API 和移动后端。 应用程序服务是一项基于 HTTP 的服务,用于托管 Web 应用程序、REST API 和移动后端。支持 ASP.NET、ASP.NET Core、Java、Ruby、Node.js、PHP 或 Python等主流编程语言,用户可以无需管理底层基础设置,即可简单、高效、安全和灵活地对应用进行部署、

  • 我有一个SpringBoot项目(maven/java8)。 我想通过Maven配置文件(dev.properties|prod.properties)过滤src/main/Resources/application.properties中的一些自定义变量 Maven命令: 应用属性: 开发属性: prod.properties: pom.xml:

  • 我已经安装了 krb5-应用程序-服务器和 krb5-工作站;在 KDC 服务器中的 /etc/krb5.conf 中配置 krb5.conf 我在 KDC 中创建了一个用户根/管理员 但是当我在应用程序服务器上时,键入 : 他们说: “在初始化 kadmin 接口时,kadmin 客户端缺少 krb5.conf 中缺少的参数” krb5.conf 中缺少什么???在 krb5.conf 中应用: