gfast 環(huán)境部署

2022-03-25 15:49 更新

下載框架

git clone https://github.com/tiger1103/gfast.git

切換到2.0分支

git checkout os-v2

安裝依賴

?go mod download? 或 ?go mod tidy?

項目配置文件

在項目根目錄 ?./config/config.toml? 修改必要配置如下:

數(shù)據(jù)庫連接

[database]
    link  = "mysql:root:123456@tcp(localhost:3306)/gfast-v2-open"
    charset   = "utf8mb4" #數(shù)據(jù)庫編碼
    debug = true
    dryRun = false #空跑
    maxIdle      = "10" #連接池最大閑置的連接數(shù)
    maxOpen     = "10" #連接池最大打開的連接數(shù)
    maxLifetime  = "30" #(單位秒)連接對象可重復使用的時間長度
    # Database logger.
    [database.logger]
        Path   = "./data/log/gf-app/sql"
        Level  = "all"
        Stdout = true

web服務器配置

[server]
    Address     = ":8200"
    ServerRoot  = "./public/resource"
    ServerAgent = "gfast-app"
    LogPath     = "./data/log/gf-app/server"
    logStdout           = true               # 日志是否輸出到終端。默認為true
    errorStack          = true               # 當Server捕獲到異常時是否記錄堆棧信息到日志中。默認為true
    errorLogPattern     = "error-{Ymd}.log"  # 異常錯誤日志文件格式。默認為"error-{Ymd}.log"
    accessLogPattern    = "access-{Ymd}.log" # 訪問日志文件格式。默認為"access-{Ymd}.log"
    DumpRouterMap    = true
    NameToUriType = 3
    maxHeaderBytes    = "20KB"
    clientMaxBodySize = "200MB"
    accessLogEnabled    = true              # 是否記錄訪問日志。默認為false
    errorLogEnabled     = true               # 是否記錄異常日志信息到日志中。默認為true
    PProfEnabled     = true                 # 是否開啟PProf性能調(diào)試特性。默認為false

?ServerRoot用來設置Server的主目錄(類似nginx中的root配置,默認為空)

?Server默認情況下是沒有任何主目錄的設置,只有設置了主目錄,才支持對應主目錄下的靜態(tài)文件的訪問。

?ClientMaxBodySize發(fā)送請求最大長度 如果需要上傳大文件可以適當改大。

gToken配置

[gToken]
    [gToken.system]
        CacheMode = 2
        CacheKey = "GToken:"
        Timeout = 3600000 #1個小時
        MaxRefresh = 0
        TokenDelimiter="_"
        EncryptKey = "koi29a83idakguqjq29asd9asd8a7jhq"
        AuthFailMsg = "登錄超時,請重新登錄"
        MultiLogin = true  #后臺是否允許多端同時在線

其中?CacheMode是?gToken存儲模式,1為直接存儲在內(nèi)存中,2為使用redis存儲 。

注意:如果存儲在內(nèi)存中則每次服務重啟都會清空token數(shù)據(jù),也就是用戶登錄數(shù)據(jù)會丟失,需要重新登錄。

后臺相關(guān)配置

[system]
    notCheckAuthAdminIds = [1,2,31]  #無需驗證后臺權(quán)限的用戶id(超級管理員)

redis配置

# Redis數(shù)據(jù)庫配置
[redis]
    open = true #是否開啟 redis 緩存 若不開啟使用gchache緩存方式
    default = "127.0.0.1:6379,9?idleTimeout=600"

前端準備工作

node支持版本請使用 v12.x 或 v14.x

若要使用node v16以上請將修改node-sass 和 sass-loader 為以下版本

    "node-sass": "^6.0.1",
    "sass-loader": "^10.0.1",

下載前端項目

git clone https://github.com/tiger1103/gfast-ui.git

切換到2.0分支

git checkout os-v2

進入項目目錄

?cd gfast-ui?

安裝依賴

npm install

強烈建議不要用直接使用 cnpm 安裝,會有各種詭異的 bug,可以通過重新指定 registry 來解決 npm 安裝速度慢的問題。

npm install --registry=https://registry.npm.taobao.org

本地開發(fā) 啟動項目

npm run dev

打開瀏覽器,輸入:http://localhost:80 (默認賬戶 demo/123456)

若能正確展示登錄頁面,并能成功登錄,菜單及頁面展示正常,則表明環(huán)境搭建成功。

前端部署

當項目開發(fā)完畢,只需要運行一行命令就可以打包你的應用

打包正式環(huán)境

npm run build:prod

打包預發(fā)布環(huán)境

npm run build:stage

構(gòu)建打包成功之后,會在根目錄生成 dist 文件夾,里面就是構(gòu)建打包好的文件,通常是 .js 、.css、index.html 等靜態(tài)文件。

通常情況下 dist 文件夾的靜態(tài)文件發(fā)布到你的 nginx 或者靜態(tài)服務器即可,其中的 index.html 是后臺服務的入口頁面。

部署時改變頁面js 和 css 靜態(tài)引入路徑 ,只需修改 vue.config.js 文件資源路徑即可。

publicPath: './' //請根據(jù)自己路徑來配置更改

環(huán)境變量

所有測試環(huán)境或者正式環(huán)境變量的配置都在 .env.development等 .env.xxxx文件中。

它們都會通過 webpack.DefinePlugin 插件注入到全局。

環(huán)境變量必須以?VUE_APP_?為開頭。如:?VUE_APP_API?、?VUE_APP_TITLE ?

你在代碼中可以通過如下方式獲取:

console.log(process.env.VUE_APP_xxxx)


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號