方式一:Systemd創建守護進程
我們只需要新增一個配置文件即可,也就是使用 Systemd
來完成這些工作。
springboot打包好的jar包, 比如 weoj.jar 下面我們來創建他的守護進程
# 創建 weoj.service sudo vim /etc/systemd/system/weoj.service
在里面插入
[Unit] Description=Weoj Service Documentation=https://xxx.xxx After=network-online.target Wants=network-online.target [Service] Type=simple ExecStart=/usr/bin/java -server -Xms256m -Xmx256m -jar # YOUR_JAR_PATH # ExecStop=/bin/kill -s QUIT $MAINPID Restart=always StandOutput=syslog StandError=inherit [Install] WantedBy=multi-user.target
參數:
- -Xms256m:為 JVM 啟動時分配的內存,請按照服務器的內存做適當調整,512 M 內存的服務器推薦設置為 128,1G 內存的服務器推薦設置為 256,默認為 256。
- -Xmx256m:為 JVM 運行過程中分配的最大內存,配置同上。
- YOUR_JAR_PATH:Halo 安裝包的絕對路徑,例如
/www/wwwroot/weoj.jar
。
# 修改 service 文件之后需要刷新 Systemd sudo systemctl daemon-reload # 使 weoj 開機自啟 sudo systemctl enable weoj # 啟動 weoj sudo service weoj start # 重啟 weoj sudo service weoj restart # 停止 weoj sudo service weoj stop # 查看 weoj 的運行狀態 sudo service weoj status
方式二:nohup 和 &(推薦)
application.properties 為配置文件 里面可以修改端口信息
# 服務端口
server.port=8888
# 數據庫信息
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/exam?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=root
進入上面的路徑
保證exam.jar 和 application.properties 同一個路徑下。
部署
exam.log 為日志輸出
nohup java -jar weoj.jar >exam.log 2>&1 &