Spring Boot項目打包并部署到云服務器
Spring Boot項目打包并部署到云服務器
一、云服務器的環境
OS: CentOS 7
Jdk 1.8
Spring Boot自動集成Tomcat,不需要單獨配置
二、本地Spring Boot項目打包
我使用的工具是Intellij IDEA。打包之前先確保MAVEN配置正確。在cmd出口中輸入:mvn用來檢查是否配置正確。
然后在項目的pom.xml文件中加入以下依賴(在之前)。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
進行打包命令:mvn clean package
如果IDEA自帶的終端出現:mvn不是內部或外部命令,也不是可運行的程序 或批處理文件。可以使用cmd(管理員運行)進入項目位置。在執行命令。
打包完成以后會在項目的target文件夾下生成cms-1.0-SNAPSHOT.jar這樣的JAR包。
然后將jar包、數據庫文件、啟動腳本放在一個文件夾內上傳到云服務器。我的是放在:``/usr/server/cms`
啟動腳本可以下載,藍奏云地址:? 啟動腳本
也可以自己新建一個文本文檔命名為:catalina.sh,然后復制以下內容。JAR包的名稱需要自己修改。
#!/bin/bash #這里可替換為你自己的執行程序 APP_NAME=cms-1.0-SNAPSHOT.jar #使用說明,用來提示輸入參數 usage() { echo "Usage: sh 執行腳本.sh [start|stop|restart|status]" exit 1 } #檢查程序是否在運行 is_exist(){ pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print }' ` #如果不存在返回1,存在返回0 if [ -z "${pid}" ]; then return 1 else return 0 fi } #啟動方法 start(){ is_exist if [ $? -eq "0" ]; then echo "${APP_NAME} is already running. pid=${pid} ." else BUILD_ID=dontKillMe nohup java -jar $APP_NAME > ./catalina.log & fi } #停止方法 stop(){ is_exist if [ $? -eq "0" ]; then kill -9 $pid else echo "${APP_NAME} is not running" fi } #輸出運行狀態 status(){ is_exist if [ $? -eq "0" ]; then echo "${APP_NAME} is running. Pid is ${pid}" else echo "${APP_NAME} is NOT running." fi } #重啟 restart(){ stop start } #根據輸入參數,選擇執行對應方法,不輸入則執行使用說明 case "" in "start") start ;; "stop") stop ;; "status") status ;; "restart") restart ;; *) usage ;; esac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
三、啟動Spring Boot服務
首先在云服務器安裝Java,建議與本地Java版本一致。可以參考:? CentOS 7搭建Java開發平臺——Java 8
然后進入jar包的存放位置,添加權限:(我的是在/usr/server/cms下執行)
chmod 777 * .
1
啟動:在jar包的目錄下執行
./catalina.sh start
1
查看啟動日志:
tail -f catalina.log
1
四、測試結果
查看啟動日志,沒有報錯以后可以用Postman或者瀏覽器測試結果
Spring Spring Boot
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。