Linux: 部署jar包和开机自启

2019/09/20

部署jar包和开机自启

一种是直接执行脚本

一种是以服务的方式开机启动

一、jar包运行

1.普通运行

java -jar demo.jar

2.指定配置文件运行

java -jar demo.jar --spring.profiles.active=prod

二、开机脚本启动

1.开机自动运行脚本

  • 先赋予 rc.local 执行权限:
chmod +x /etc/rc.d/rc.local
  • rc.local 最后一行添加执行Shell的语句
  • 重启即可

2.开机启动自定义服务

  • 新建服务启动时使用的脚本(跟普通脚本不同的是写入了一个文件中记录PID,是为了关闭服务的时候能够终止进程):
  1 #!/bin/bash
  2 /usr/java/jdk1.8.0_221/bin/java -jar /root/hiki/hiki-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod &
  3 echo $! > /var/run/hiki.pid

  • 新建服务关闭时使用的脚本:
  1 #!/bin/bash
  2 PID=$(cat /var/run/hiki.pid)
  3 kill -9 $PID
  • /usr/lib/systemd/system/新增一个服务:
vim /usr/lib/systemd/system/hiki.service
  • 编辑服务(注意Description、ExecStart、ExecStop 需要修改):
  1 #!/bin/bash
  2 
  3 [Unit]
  4 
  5 Description=hiki-service
  6 
  7 After=syslog.target network.target remote-fs.target nss-lookup.target
  8 
  9 
 10 [Service]
 11 
 12 Type=forking
 13 
 14 ExecStart=/root/album/hiki-start.sh
 15 
 16 ExecStop=/root/album/hiki-stop.sh
 17 
 18 PrivateTmp=true
 19 
 20 
 21 [Install]
 22 
 23 WantedBy=multi-user.target
  • /etc/rc.d/rc.local 最后一行添加启动服务即可:
    systemctl hiki.service
    
  • 重启即可

部署时遇到的一些问题

1.端口占用

查询占用端口PID

lsof -i:port

终止进程:

kill pid





github: https://github.com/Hikiy
作者:Hiki
创建日期:2019.09.20
更新日期:2019.09.20

(转载本站文章请注明作者和出处 Hiki

Post Directory