阿里雲部署JeecgBoot
首先貼出官網教程:http://jeecg-boot.mydoc.io/?t=345682
自己在部署的時候遇到了各種各樣的問題,其實一步一步的按照官網給出的步驟來是沒問題的,有個別采坑的地方在此記錄一下。
部署采用jar的方式部署,我不喜歡用war,主要是不會,哈哈哈。
首先部署的時候得保證阿里雲安裝了nginx、redis、mysql5.7、java。
nginx、redis、mysql5.7在之前的博客上有寫怎樣安裝,在這里就不在累述了,但是提醒各位一句,安裝這些軟件的時候最好使用docker的方式安裝,以防止安裝失敗污染環境。
在這里說一下怎樣安裝java,安裝java的版本至少是8,JDK1.8的java,說的不專業,但是你理解什么意思就可以。
首先執行下面這段命令:奧,對了,我的阿里雲是centos7的。
wget http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz?AuthParam=1531155951_4e06a4d17c6c1dbfb8440352e19dd2ae
然后在執行這一段:
yum -y install java-1.8.0-openjdk
最后就安裝成功了,輸入下面的命令查看java版本
java -version
阿里雲的環境搭建好了,現在就需要把程序打包了,在打包之前嘞,有些參數修改一下,和官網文檔差不多。
先說后台
- 首先調成生產環境
- 生產環境的數據庫連接、redis都用127.0.0.1就行
- 密碼啥的都設置一下,別沒改,數據庫的密碼最好不要是默認的,或者是123456,root之類的,太簡單了,免得被黑。
- 那幾個文件路徑最好在阿里雲上創建一下,免得存東西的時候報錯
- 我把后台的端口改成8089了,默認是8080
- MySQL必須5.7以上,不然 jeecgboot 提供的數據庫文件導入會失敗!
目前 jeecg-boot-module-system 作為啟動和打包項目。
打包的過程看下面這張圖吧,按步驟來就行,一定要先安裝一下他爹!!!
四步走下來,然后就打包完了,應該不會出錯。
打包完成之后你就會看到目錄下面多了個target文件夾,文件夾下我們需要的是圈起來的這個jar包。記住,下次再打包的時候先clean一下,就是把上一次的清一下。我是這么理解的,我是小白,說錯了大神勿罵
然后這個jar直接拖到阿里雲上去找個地方放着就行了。
jar方式運行它
nohup java -jar jeecg-boot-module-system-2.1.3.jar &
看一下運行的內容就用下面這句話
tail -f nohup.out
好了,后台應該沒問題了。
查看java進程
sudo ps -aux|grep java
殺死進程
kill 進程號
然后是vue前端。
前端build之前改幾個地址,修改后台接口服務地址 public/index.html
window._CONFIG['domianURL'] = 'http://阿里雲ip:8080/jeecg-boot';
修改 vue.config 文件:
'/jeecg-boot': {
target: 'http://阿里雲ip:8089', //請求本地 需要jeecg-boot后台項目
ws: false,
changeOrigin: true
},
就先改這兩個地方吧。
開始打包吧。
點他!
打包完就會出這個文件夾
里面的東西統統放進阿里雲,放到nginx配置的根目錄里,因為他有index.html,就是為了訪問阿里雲外網IP的時候可以找到他。
配置一下nginx
vim /usr/local/nginx/conf/nginx.conf
把下面這兩段加進去
location ^~ /jeecg-boot{
proxy_pass http://127.0.0.1:8089/jeecg-boot/;
proxy_set_header Host 127.0.0.1;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location / {
root /home/wjw/www/dist;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
修改完之后沖加載一下
/usr/local/nginx/sbin/nginx -s reload
就是這個樣子,然后你的頁面應該起來了,訪問阿里雲ip應該可以訪問到,如果訪問不到,把阿里雲的對外端口也就是安全組那個東西開一下。