第一步:在pom文件中引入maven管理插件 spring-boot-maven-plugin
使用maven把工程打成jar包
在命令行執行jar,即可發布springboot應用了
在linux中使用如下命令:java -jar springboot.jar 即可執行該項目了
那么問題來了,你發布項目后,只要關閉啟動窗口,服務就會停止,所以重點來了,后台啟動項目
第二步:在Linux上創建文本,spring.service,本人是在windows上創建文本,在上傳到Linux中,效果一樣
編輯的語句如下:
[Unit] Description=abcd service After=syslog.target [Service] Type=simple ExecStart= /usr/bin/java -jar /home/app/abcd.jar [Install] WantedBy=multi-user.target
保存起來,為 abcd.service文件
說明
Description 服務描述
/usr/bin/java java路徑(我這里是絕對路徑,可以使用其他可執行java的路徑)
/home/app/abcd.jar 可執行jar包的路徑
然后將文本文件保存成后綴名為.service
上面的文件保存之后 可以是abcd.service
3.上傳可執行jar包和.service安裝文件
jar包程序文件上傳到自定義的位置(我們會在每個系統用戶下定義一個叫app的文件夾將jar包保存在此文件夾)
.service文件上傳到系統/etc/systemd/system 目錄下(本人用的是centos7系統,其他系統大同小異酌情處理)(如果你對linux文本編輯熟練的話 可以直接創建文件進行編輯)
注意編碼要一致(驗證是否一致只需在linux服務器上打開.service文件看是都和windows一致是否有亂碼)
4.在部署服務器上執行以下命令(centos7)
刷新服務配置文件
systemctl daemon-reload
服務設置為開機啟動
systemctl enable abcd.service
啟動服務
systemctl start abcd.service
停止服務
systemctl stop abcd.service
查看服務狀態
systemctl status abcd.service
5.查看日志
journalctl -u abcd.service
這樣部署就可以免去打成war包部署而存在的多一塊項目路徑的問題同時也支持spring cloud 注冊中心(其實也主要是為了使用spring cloud注冊中心)