ubuntu24 springboot jar设置宕机重启

在Ubuntu 24上为Spring Boot JAR包设置宕机重启策略,使用systemd是推荐的方法。以下是如何配置的详细步骤:

使用 systemd 设置自动重启

  1. 创建 systemd 服务文件

    首先,你需要创建一个systemd服务文件来管理你的Spring Boot应用。你可以使用文本编辑器如nanovim来创建和编辑这个文件。例如,如果你的应用名为myapp.jar,你可以创建一个名为myapp.service的服务文件。

    sudo nano /etc/systemd/system/myapp.service
    
  2. 编辑服务文件

    在文件中添加如下内容,确保路径和用户名根据实际情况修改:

    [Unit]
    Description=My Spring Boot Application
    After=syslog.target
    
    [Service]
    User=your_user
    ExecStart=/usr/bin/java -jar /path/to/your/myapp.jar
    SuccessExitStatus=143
    Restart=on-failure
    RestartSec=10s
    Environment=SPRING_PROFILES_ACTIVE=prod
    # 如果需要输出日志到特定文件,可以取消下面这行的注释并修改路径
    # StandardOutput=file:/var/log/
### 配置和运行 Spring Boot 项目 要在 Ubuntu 系统中配置并运行 Spring Boot 项目,可以按照以下方法操作: #### 方法一:通过 JAR 文件直接运行 在 Linux 或 Ubuntu 上运行 Spring Boot 应用程序最简单的方式就是使用其打包后的 JAR 文件。确保 Java 已经安装在系统中,并可以通过 `java -version` 命令验证版本。 ```bash sudo apt update && sudo apt install default-jdk ``` 接着将构建好的 Spring Boot JAR 文件上传至服务器指定目录下,例如 `/opt/spring-boot-app/`。进入该路径并通过以下命令启动应用程序[^4]: ```bash nohup java -jar your-springboot-application.jar > app.log & ``` 此方式会将日志输出重定向到 `app.log` 并让进程以后台模式运行。 #### 方法二:借助 Docker 容器化技术部署 如果希望采用更现代化的方法来管理依赖关系以及隔离环境,则推荐使用 Docker 来封装整个应用及其所需的所有组件。首先创建一个简单的 Dockerfile 如下所示[^1]: ```dockerfile FROM openjdk:17-alpine ADD target/your-springboot-application.jar /usr/app/your-springboot-application.jar WORKDIR /usr/app ENTRYPOINT ["java","-jar","your-springboot-application.jar"] ``` 然后在同一目录执行如下指令完成镜像制作与容器实例初始化过程: ```bash docker build -t springboot-docker . docker run -d --name my-running-app -p 8080:8080 springboot-docker ``` 上述步骤将会把本地服务暴露给外部访问者,默认监听端口设为8080. #### 数据库连接调整及其他注意事项 无论采取哪种方案,在正式上线前都需要确认项目的 application.yml (或者 properties 格式的同名文件)中的各项参数已经适配目标生产环境下的实际情况,比如数据库地址、用户名密码等敏感信息均需替换为自己真实可用的内容[^2][^3]. 另外值得注意的是,当涉及到持久层存储时(即存在 MySQL/PgSQL之类的RDBMS),还需要额外考虑网络连通性和安全性设置等问题. ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值