本文介紹Spring Boot、Vue 、Vue Element編寫的項目,在Linux下的部署,系統採用Mysql數據庫。按照本文進行項目部署,不迷路。前端
典型的軟件開發,通過「需求分析」,「概要設計」,「詳細設計」,「開發及單元測試」,「先後端聯調」,「生產環境上線」。到了發佈到生產環節的環節,緊張的神經,終於能夠鬆一口氣了!!!java
且慢,部署也是很重要的一環,稍有不慎就會「前功盡棄」。mysql
開發中,每一個人的開發環境、工具可能都不一樣。目前大部分人用Windows(Win 10)開發,部分用Mac系統開發,還有極少數用Linux系統開發。但,爲了運行的穩定,開發的系統大部分都部署在Linux平臺。本文采用Centos 7部署Spring Boot項目,並介紹先後端項目的打包和部署。webpack
1)開發環境說明web
本着一切爲了「開發效率」,在項目開發的時候:spring
後端採用了IntelliJ IDEA做爲Spring Boot的開發工具(其實用Eclipse也是Ok的),用了典型「controller、service、dao三層架構」;sql
前端採用Vs Code做爲Vue及Vue Element的開發工具,用webpack進行項目打包,「地球人都知道,這裏就很少囉嗦了」;docker
用Git做爲分佈式版本控制系統;數據庫
Mysql數據;npm
用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 &
項目通過辛苦的開發,終於進入上線,試運行。大公司通常會有專門人員負責部署工做,通常的小公司,開發人員要「全棧」。從需求,開發,測試,部署,等等都要負責。
此文不涉及自動化部署,也不談docker等方式部署。
傳統工藝,純手工打造,值得擁有!
本文是我的項目部署的經驗總結,結合了互聯網上衆多成功案例,不敢獨自居功。
若是您閱讀本文後哪怕有一丟丟收穫,請不要吝嗇你手中關注和點贊的權力,謝謝!