1. 程式人生 > 其它 >wumei-smart編譯執行和部署系統

wumei-smart編譯執行和部署系統

一、系統要求

  • JDK >= 1.8
  • MySQL >= 5.7
  • Maven >= 3.0
  • Redis >= 3.0
  • Node >= 10
  • EMQX

二、開發工具

  • 後端: IDEA、Eclipse
  • 前端: Virtual Studio Code
  • 安卓: Android Studio

三、執行

  • 後端:
    1. Mysql新建wumei-smart資料庫,匯入spring-boot中的sql檔案
    2. 開啟spring-boot專案,自動安裝依賴
    3. 編輯resources目錄下的application-druid.yml,修改資料庫配置資訊
    4. 編輯resources目錄下的application.yml,修改redis、mqtt配置,預設賬號admin admin123
    5. 執行專案
  • 前端:
    1. 安裝依賴:執行npm install命令。強烈建議不要用直接使用 cnpm 安裝,會有各種詭異的 bug,可以通過重新指定 registry 來解決 npm 安裝速度慢的問題。npm install --registry=https://registry.npm.taobao.org
    2. 啟動專案:執行npm run dev命令
    3. 瀏覽器開啟http://localhost:80訪問。(預設賬戶/密碼admin/admin123)

四、後端部署

    1. 在spring-boot專案的bin目錄下執行package.bat打包Web工程,生成war/jar包檔案。spring-boot/ruoyi-admin模組下target資料夾下包含war或jar檔案
    2. jar部署方式:使用命令列執行:java –jar ruoyi.jar 或者執行指令碼:spring-boot/bin/run.bat
    3. war部署方式:spring-boot/ruoyi-admin/pom.xml中的packaging修改為war,放入tomcat伺服器webapps

五、前端部署

    1. 打包正式環境: npm run build:prod
    2. 打包預釋出環境: npm run build:stage
    3. 構建打包成功之後,會在根目錄生成 dist 資料夾,裡面就是構建打包好的檔案,通常是 ***.js 、***.css、index.html 等靜態檔案。

六、Android專案打包

    1. 修改工程根目錄的gradle.properties中的isNeedPackage=true。
    2. 新增並配置keystore,在versions.gradle中修改app_release相關引數。
    3. 如果考慮使用友盟統計的話,在local.properties中設定應用的友盟ID:APP_ID_UMENG。
    4. 使用./gradlew clean assembleReleaseChannels進行多渠道打包。

七、Nginx配置

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   /html/vue;
        try_files $uri $uri/ /index.html;
            index  index.html index.htm;
        }
        
        location /prod-api/{
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://localhost:8080/;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}