ubuntu20.04设置开机自启动jar(依赖其他服务)

目的:

有的时候我们的项目是部署在物理机上给其他公司员工使用,对于他们来说操作越简单越好。所以我需要实现将我的jar部署在ubuntu上,实现开机自启。(我的项目依赖emqx服务)。

步骤:

切换到system目录

bash 复制代码
cd /etc/systemd/system

创建服务文件

sims.service(服务名字你们自定义)

文件内容如下:

bash 复制代码
[Unit]
Description=Spring Boot Application sims
After=network.target emqx.service

[Service]
User=main
ExecStart=/opt/env/jdk-11.0.20/bin/java -jar /usr/sims/v1.0.0/sims-0.0.1-SNAPSHOT.jar
SuccessExitStatus=143
TimeoutStopSec=10
Restart=no
RestartSec=5

[Install]
WantedBy=multi-user.target

解释

After=network.target emqx.service 因为sims依赖了emqx 所以需要在emqx后启动

User为你的用户 我的用户名称为main 这里要确保你执行的jar的目录下 你的main用户有该权限

ExecStart前面的为你的java目录 可以通过which java 命令获取到

Restart=no 在你kill掉后就不会重启 如果Restart=on-failure 那么失败后就会重启这个服务 比如kill掉

注意

每次修改完毕后记得 执行

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl restart sims.service

检查服务状态

bash 复制代码
systemctl status sims.service

服务停止

bash 复制代码
sudo systemctl stop sims.service
相关推荐
日取其半万世不竭3 小时前
用 Portainer 可视化管理 Docker:容器再多也不用背命令了
运维·docker·容器
2023自学中4 小时前
Linux 图形系统
linux
kirs_ur4 小时前
ECC & LDPC — SSD 的数据卫士
服务器·数据库·性能优化
小Ti客栈5 小时前
Spring Boot 集成 Springdoc-OpenAPI 与 Knife4j实现接口文档与可视化调试
java·spring boot·后端
Ai拆代码的曹操6 小时前
Spring 事务 REQUIRES_NEW 嵌套调用:连接池翻倍的秘密
java·后端·spring
mounter6256 小时前
高性能网络技术演进与创新探索:RDMA、eBPF/XDP 深度解析及 LSF/MM/BPF 2023 专题演讲
linux·ebpf·linux kernel·kernel·rdma·xdp
动恰客流统计6 小时前
ReID边缘计算视觉统计:餐饮店客流增长的数字化破局路径
java·大数据·运维·人工智能
名字还没想好☜6 小时前
Python itertools 实战:用 groupby、chain、islice 优雅处理大数据流
linux·windows·python·迭代器·itertools
Ivanqhz7 小时前
Rust &‘static str浅析
java·前端·javascript·rust
ziguo11229 小时前
深入浅出 C/C++ 数据类型:从入门到踩坑
linux·c语言·c++·windows·visual studio