# 在linux服务器上使用Linux Service部署java服务或其他服务

我们以部署一个名为intellect-chart-v1.0.0.jar的Java Spring Boot项目为例, 来演示如何创建一个Linux服务。演示的服务器为一台x86_64架构的Centos8系统, 此处我们使用root用户,实际应尽量避免使用root用户去操作linux系统!

# 安装步骤如下:

# 1. 在用户目录下创建应用程序目录

cd ~
mkdir intellect-chart
1
2

# 2. 创建service文件

cd /root/intellect-chart
vim intellect-chart.service
1
2

intellect-chart.service内容如下:

[Unit]
Description=java intellect-chart server

[Service]
ExecStart=/usr/bin/java -jar /root/intellect-chart/intellect-chart-v1.0.0.jar
Restart=always
Environment=PATH=/usr/bin:/usr/local/bin
WorkingDirectory=/root/intellect-chart

[Install]
WantedBy=multi-user.target
1
2
3
4
5
6
7
8
9
10
11

此处只介绍本服务用到的基础属性,更多Service文件配置属性请自行Google

[Unit] 定义该服务作为Unit角色时相关的属性

Description 属性是指服务的描述,使用systemctl status intellect-chart查看服务信息时,该描述将显示在第一行
可以使用 Wants、Requires、After、Before等属性来定义本服务的依赖关系和启动顺序等行为

[Service] 定义服务自身相关的属性

ExecStart 属性后跟服务的启动命令,例如我们的java服务使用java -jar命令启动
Restart 顾名思义,服务重启相关配置
Environment 服务使用到的环境变量配置
WorkingDirectory 服务的工作目录

[Install] 定义服务在设置开机自启时相关的属性

WantedBy=multi-user.target 本服务设置开机自启动时,将在/etc/systemd/multi-user.target.wants目录下创建本服务的软链接。

# 3. 建立软连接到 /etc/systemd/system

ln -s /root/intellect-chart/intellect-chart.service /etc/systemd/system/intellect-chart.service
1

# 4. 重载系统服务

systemctl daemon-reload
1

# 5. 启动服务

systemctl start intellect-chart.service
1

至此Linux服务安装完成,后续可使用systemctl或者service命令来启动、停止、重启该服务。

上次更新: 2 years ago