­

Spring框架學習筆記(6)——阿里雲服務器部署Spring Boot項目(jar包)

  • 2019 年 11 月 3 日
  • 筆記

最近接外包,需要部署服務器,便是參考了網上的幾篇博文,成功在阿里雲服務器成功部署了Spring Boot項目,特記下本篇筆記

Spring Boot項目打包

這裡說一下部署的一些問題

1.mysql驅動

創建spring boot的時候,在界面選擇添加了MySql的依賴,但是,實際項目測試的時候,發現驅動錯誤,所以,得把MySql驅動改為下面的驅動

<!-- mysql驅動 -->  <dependency>      <groupId>mysql</groupId>      <artifactId>mysql-connector-java</artifactId>      <version>5.1.6</version>  </dependency>

2.打包

使用spring boot項目,通過maven中的lifecycle中的package進行快速打jar包,這個jar包內置了tomcat服務器,之後就可以直接運行此jar包。

之後我們就可以得到一個jar包,把此jar包部署到服務器

配置寶塔linux系統環境

購買服務器

我購買的是學生主機,比較實惠,只要是經過實名驗證,24歲以下,就是自動默認的學生身份
選擇輕量級應用服務器和寶塔linux選項,可以快速安裝並使用linux寶塔面板,很適合不懂linux命令的人群

安裝寶塔系統

首先,購買到服務器之後,會要求你設置管理員的密碼,之後通過遠程連接到服務器,切換到管理員賬戶,輸入下面的安裝寶塔linux命令

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh

之後會彈出一個提示,輸入y之後就開始安裝了

我們輸入下面命令,來查看系統生成的linux寶塔系統的用戶名和密碼

/etc/init.d/bt default

登錄寶塔linux系統

寶塔的地址為ip地址:8888,如47.22.22.33:8888

使用上面獲得的寶塔系統的賬戶密碼登錄寶塔linux系統,之後進行環境的安裝(數據庫,php,tomcat)

由於我們是jar包方式部署,所以需要服務器上配置好java環境,我們不想通過命令行類配置java環境,可以選擇寶塔系統安裝Tomcat環境

安裝Tomcat環境就會默認安裝Java環境了,Tomcat環境的話,選擇版本8,這樣,默認的Java環境就是1.8,如果版本為7,則默認為Java環境為1.7

遠程連接服務器

可以使用ssh本地客戶端遠程連接服務器,我這裡使用的是xshell,連接很簡單,只需要配置好主機(Ip地址)、用戶名和密碼即可

之後輸入linux中的管理員密碼即可成功登陸

服務器配置mysql數據庫

1.開啟3306接口放行

PS:可能還需要在服務器的防火牆添加規則

2.配置mysql遠程連接

默認的mysql是不允許遠程連接的,所以,我們得配置mysql遠程連接

使用Xshell等ssh客戶端,遠程連接到服務器上,之後輸入命令mysql -u 賬戶名 -p,輸入密碼之後即可進入到mysql命令行,輸入下面的命令

%使用mysql默認的數據庫  use mysql;  %設置遠程連接  update user set host ='%' where user = 'root' and host='localhost';  %刷新  flush privileges

參考鏈接:

Mysql初始化root密碼和允許遠程訪問

解決Navicat遠程連接MySQL出現 10060 unknow error

部署項目

服務器部署spring boot項目有兩種方式,war(傳統tomcat方式),jar

war的話,直接放在tomcat的webapp的目錄即可

本文使用是jar包部署,使用linux寶塔系統把之前的那個spring boot的jar包上傳到服務器上

由於是服務器,如果關閉了遠程連接窗口,就會自動結束進程,所以,得要實現後台運行jar包

使用命令來開啟後台

//遠程連接關閉,也會關閉  java -jar xx.jar  //後台  java -jar xx.jar &

新建一個腳本start.sh,然後腳本需要給予權限(寶塔linux中文件選項可以快捷更改)

java -jar xx.jar >nohup.out 2>&1& 

上面的腳本,只需要修改為正確的jar包文件,之後執行腳本就會開啟後台執行jar包,同時,會將日誌輸出到nohup.out文件中

我們在本地建好腳本,之後上傳到服務器上,修改權限為777

下面的全勾選,權限就會變為777

之後通過ssh客戶端遠程連接服務器,以管理員的身份來執行腳本

./start.sh

之後項目訪問的話就是通過ip地址+端口號+項目名,如44.22.22.22:13888/Demo/hello,這裡,我是在spring boot配置文件中自定義了端口13888,默認的話則是8080

如果有自定義端口,還要放行端口,在寶塔linux系統的安全選項可以修改,詳情請參考上面的mysql端口的放行

如果項目有所更改,再次部署的時候,先通過jps命令查看運行的jar包,之後關閉進程,重新上傳新的jar包,並執行腳本即可