部署项目之systemd部署

system后端项目部署操作手册(systemd 版 )

一、项目目录说明

xml 复制代码
/opt/project/
├── project-backend.jar    # 后端 jar 包
├── application-prod.yml  # 生产环境配置文件
└── (日志由系统 journalctl 管理)

二、systemd 服务配置文件

文件路径

xml 复制代码
/etc/systemd/system/project.service

完整配置内容

xml 复制代码
[Unit]
Description=project Backend Service
After=network.target

[Service]
User=root
Group=root
Type=simple
WorkingDirectory=/opt/project
ExecStart=/usr/local/linux-aarch64/bin/java -jar /opt/project/project-backend.jar --spring.config.location=/opt/project/application-prod.yml --logging.level.com.zaxxer.hikari=DEBUG
SuccessExitStatus=143
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

三、常用操作命令

  1. 重载配置(修改 service 后必须执行)
xml 复制代码
systemctl daemon-reload
  1. 启动服务
xml 复制代码
systemctl start project
  1. 停止服务
xml 复制代码
systemctl stop project
  1. 重启服务
xml 复制代码
systemctl restart project
  1. 查看服务状态
xml 复制代码
systemctl status project
  1. 设置开机自启
xml 复制代码
systemctl enable project
  1. 关闭开机自启
xml 复制代码
systemctl disable project

四、日志查看命令

  1. 实时查看日志(推荐)
xml 复制代码
journalctl -u project -f
  1. 查看最近 100 行日志
xml 复制代码
journalctl -u project -n 100
  1. 查看今天所有日志
xml 复制代码
journalctl -u project --since today

五、进程管理

  1. 查看是否有 Java 进程运行
xml 复制代码
ps -ef | grep java
  1. 强制杀死所有 Java 进程(应急用)
xml 复制代码
pkill -f java
  1. 仅杀死当前项目进程
xml 复制代码
pkill -f 'project-backend.jar'

六、重新部署流程(更新 jar 包)

上传新的 project-backend.jar 到 /opt/project/

停止服务:systemctl stop project

启动服务:systemctl start project

查看状态确认启动成功:systemctl status project

七、启动成功标志

Active: active (running)

出现绿色 running 即为正常运行。

八、常见问题排查

启动失败 → 看日志:journalctl -u project -e

端口占用 → 杀进程:pkill -f java

数据库连不上 → 检查 application-prod.yml 配置

服务启动后自动退出 → 多为配置文件语法错误或库连接异常

相关推荐
未济2 天前
linux 配置环境变量
linux
傲世仙尊2 天前
目录即文件-Ext文件系统收尾篇
linux·c语言
虎头金猫2 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
_艾伦 耶格尔.2 天前
进程间通信
linux
AI职业加油站2 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
Liuqy-052 天前
Linux IO编程——静态库、动态库
linux
此冬歌咏2 天前
K8s 节点故障实战:优雅驱逐 31 秒,硬故障 331 秒,以及那个永远 Pending 的 Pod
运维·k8s
彧azz2 天前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
-梅2 天前
linux(8) 软硬链接
linux·运维·服务器
Wang's Blog2 天前
Java 项目实战: 外卖平台-文件下载与ServletOutputStream回写浏览器
服务器·项目开发