Ginblog(專案已完成,歡迎使用)
地址
重要更新
2021.9.22 完成V0.0.1基本資料展示
介紹
gin+vue 全堆疊制作一個博客,
這是一個分享全堆疊制作程序的專案,旨在為有興趣接觸 golang web 開發的朋友分享一些制作經驗,
目錄結構
├─ .gitignore
│ go.mod // 專案依賴
│ go.sum
│ latest_log.log #最新log日志軟連接
│ LICENSE
│ main.go //主程式
│ README.md
│ tree.txt
│
├─api
├─config // 專案配置入口
├─database // 資料庫備份檔案(初始化)
├─log // 專案日志
├─middleware // 中間件
├─model // 資料模型層
├─routes
│ router.go // 路由入口
├─static // 打包靜態檔案
│ ├─admin // 后臺管理頁面
│ └─front // 前端展示頁面
├─upload
├─utils // 專案公用工具庫
│ │ setting.go
│ ├─errmsg
│ └─validator
└─web // 前端開發原始碼(VUECLI專案源檔案)
├─admin ( 打包靜態檔案在web/admin/dist下 )
└─front (打包靜態檔案在web/front/dist下)
front 后期我會用flutter重寫
運行&&部署
-
克隆專案
git clone https://gitee.com/itmxs/gin-vue-blog.git -
轉到下面檔案夾下
cd yourPath/gin-vue-blog
-
安裝依賴
go mod tidy
- 初始化專案配置config.ini
./config/config.ini
[server]
AppMode = debug # debug 開發模式,release 生產模式
HttpPort = :3000 # 專案埠
JwtKey = 89js82js72 #JWT密鑰,隨機字串即可
[database]
Db = mysql #資料庫型別,不能變更為其他形式
DbHost = 127.0.0.1 # 資料庫地址
DbPort = 3306 # 資料庫埠
DbUser = ginblog # 資料庫用戶名
DbPassWord = admin123 # 資料庫用戶密碼
DbName = ginblog # 資料庫名
[qiniu]
# 七牛儲存資訊
AccessKey = # AK
SecretKey = # SK
Bucket =
QiniuSever =
-
在database中將sql檔案匯入資料庫
推薦navicat或者其他sql管理工具匯入
-
啟動專案
go run main.go
此時,專案啟動,你可以訪問頁面
首頁
http://localhost:8080
后臺管理頁面
http://localhost:8080/admin
默認管理員:admin 密碼:123456
enjoy~~~~
使用、二開程序中,發現問題或者有功能需求歡迎提交 Iusse 或者直接 PR
實作功能
- 簡單的用戶管理權限設定
- 用戶密碼加密存盤
- 文章分類自定義
- 串列分頁
- 圖片上傳七牛云 (開源中已剔除)
- JWT 認證
- 自定義日志功能
- 跨域 cors 設定
技術堆疊
-
golang
- Gin web framework
- gorm(v1 && v2)
- jwt-go
- scrypt
- logrus
- gin-contrib/cors
- go-playground/validator/v10
- go-ini
-
前端
- vue
- vue cli
- vue router
- ant design vue
- vuetify
- axios
- tinymce
- moment
-
MySQL version:8.0.21
-
flutter
dio
getx
專案預覽
-
前端展示頁面

-
后臺登錄頁面

-
后臺管理頁面

部署
Windows平臺打包到Linux,需要輸入如下命令
set CGO_ENABLED=0
set GOOS=linux
set GOARCH=amd64
go build
- CGO_ENABLED 表示不使用cgo
- GOOS 表示目標平臺系統(Windows,linux,darwin「mac os」等等)
- GOARCH 表示目標系統架構(arm arm64 386 amd64 等等)
打包完成后,將二進制檔案放到服務器系統,賦可執行權限:
chmod 773 main
直接運行即可:
./main
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/302510.html
標籤:其他
上一篇:C++黑客小白的進階之路(第一世界初識Windows編程之第一關)——Windows的訊息機制
下一篇:C語言(struct,for(死回圈),while,do while) 計算n的階乘累加,尋找下標,閃現字串,三次解碼
