一文搞定Spring Boot + Vue 專案在Linux Mysql環境的部署(強烈建議收藏)
本文介紹Spring Boot、Vue 、Vue Element編寫的專案,在Linux下的部署,系統採用Mysql資料庫。按照本文進行專案部署,不迷路。
1. 前言
典型的軟體開發,經過“需求分析”,“概要設計”,“詳細設計”,“開發及單元測試”,“前後端聯調”,“生產環境上線”。到了釋出到生產環節的環節,緊張的神經,終於可以鬆一口氣了!!!
且慢,部署也是很重要的一環,稍有不慎就會“前功盡棄”。
開發中,每個人的開發環境、工具可能都不同。目前大部分人用Windows(Win 10)開發,部分用Mac系統開發,還有極少數用Linux系統開發。但,為了執行的穩定,開發的系統大部分都部署在Linux平臺。本文采用Centos 7部署Spring Boot專案,並介紹前後端專案的打包和部署。
2. 部署過程說明
1)開發環境說明
本著一切為了“開發效率”,在專案開發的時候:
後端採用了IntelliJ IDEA作為Spring Boot的開發工具(其實用Eclipse也是Ok的),用了典型“controller、service、dao三層架構”;
前端採用Vs Code作為Vue及Vue Element的開發工具,用webpack進行專案打包,“地球人都知道,這裡就不多囉嗦了”;
用Git作為分散式版本控制系統;
Mysql資料;
用mybatis作為持久層框架。
2)Centos 7安裝Jdk,MariaDB
Centos 7作業系統的安裝,略!網上有大量的教程,不再贅述。
安裝Jdk環境
最簡單的方式,莫過於用yum安裝,一個命令搞定(千萬別告訴我你還在用32位系統):
yum install java-11-openjdk.x86_64
安裝MariaDB
[注意] 一般情況下Linux安裝的時候會包含Mysql,這將導致MariaDb安裝不成功。
首先執行如下命令檢查是否有Mysql:
rpm -qa | grep mariadb
如果系統裡面預裝了Mysql,則先解除安裝:
yum remove mysql mysql-server mysql-libs compat-mysql51
然後新增源(都2020年了,不會用vi,拿什麼來拯救你):
vi /etc/yum.repos.d/MariaDB.repo
[mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.2.4/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1
安裝MariaDb:
yum -y install MariaDB-server MariaDB-client
啟動MariaDb服務:
systemctl start mariadb #啟動服務
加入開機啟動:
systemctl enable mariadb #設定開機啟動
3)開放防火牆埠
預設情況下,防火牆攔截是不能訪問的,此處我們開放80、22埠:
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=22/tcp --permanent
[注意] 需要重啟防火牆,命令是:
firewall-cmd --reload
檢視是否新增成功,這裡我就不截圖演示了:
firewall-cmd --zone=public --list-ports
4) 前後端打包及部署
忙碌了大半天,準備工作終於做好了。激動人心的時刻終於要來了!!!
前端專案打包
前端專案採用webpack進行管理,編譯非常簡單,也是一個命令搞定(so easy!!!):
npm run build
執行該命令後,會在專案的根資料夾下生產一個
dist
目錄。後端專案打包
將前端專案拷貝到springboot專案的resources的static目錄下,然後執行
mvn clean package
構建專案,即可生成一個專案的jar檔案,此處檔名為“myproject.jar”(該名稱可以在pom檔案中進行設定)。資料庫部署
安裝MariaDb後,預設root使用者是沒有密碼的,此時通過
mysql -uroot
命令登入到MariaDB,然後通過如下命令修改密碼為654321
:mysql> use mysql; mysql> update user set password=password('654321') where user='root' and host='localhost'; mysql> flush privileges;
之後就可以匯入資料庫指令碼了,我是通過
Navicat
客戶端操作的。當然還有其他的工具,需要經過“大象裝冰箱”三步走:新建資料庫,設定編碼utf-8,匯入Sql檔案。
執行並見證奇蹟
我們通過如下命令執行專案,如未報錯,則可以通過
http://ip
訪問專案:nohup java -jar myproject.jar >log.txt &
3. 本文總結
專案經過辛苦的開發,終於進入上線,試執行。大公司一般會有專門人員負責部署工作,一般的小公司,開發人員要“全棧”。從需求,開發,測試,部署,等等都要負責。
此文不涉及自動化部署,也不談docker等方式部署。
傳統工藝,純手工打造,值得擁有!
本文是個人專案部署的經驗總結,結合了網際網路上眾多成功案例,不敢獨自居功。
如果您閱讀本文後哪怕有一丟丟收穫,請不要吝嗇你手中關注和點讚的權力,謝謝!