關於我們

當前位置:首頁>關於我們

關於我們

PbootCMS-Go

PbootCMS 的 Go 語言實現 — 一個用 Go 構建的高性能、單二進制、零依賴部署的內容管理系統

Go
Gin
GORM
SQLite
License


項目簡介

PbootCMS-Go 是經典 PHP 開源 CMS PbootCMS 的 Go 語言重寫版本。我們致力於:

如果您曾經使用過 PbootCMS,又希望獲得 Go 部署的便利,PbootCMS-Go 是您的最佳選擇。


為什麼選擇 PbootCMS-Go?

對比 PbootCMS (PHP)

維度PbootCMS (PHP)PbootCMS-Go
部署需要 PHP 7.0+ + Web 服務器(Nginx/Apache)單個二進制文件,無外部依賴
內存佔用PHP-FPM 模式 30-80MB10-20MB
並發性能受限於 PHP-FPM 進程數Go 原生 goroutine,輕鬆上萬並發
啟動時間500-1000ms< 50ms
跨平台需安裝 PHP 環境一次編譯,到處運行(Windows/Linux/macOS/ARM)
數據庫MySQL / SQLiteSQLite(純 Go 驅動,無 CGO)
運維成本需維護 PHP 版本、擴展、配置扔一個二進制到服務器即可

對比其他 Go CMS

特性PbootCMS-Go主流 Go CMS(如 Hugo、Wagtail-Go)
後台管理✅ 開箱即用❌ 需自行開發
內容模型✅ 動態可配置❌ 通常需代碼定義
模板語法✅ 兼容 PbootCMS PHP 風格❌ 各家不同
用戶熟悉度✅ PbootCMS 60 萬用戶可直接上手❌ 需重新學習
插件生態規劃中各異

核心特性

🎯 已完成(v0.6+)

🚧 規劃中(v1.0+)


技術棧

選型說明
語言Go 1.25最新穩定版
HTTP 框架Gin v1.12高性能 Radix Tree 路由
ORMGORM v1.31Go 社區最流行 ORM
數據庫SQLite (glebarez 純 Go)無 CGO 依賴,跨平台編譯
模板引擎pongo2 v6.1.0Django 風格,業界標準
會話gin-contrib/sessionsCookie Store
文件監聽fsnotify模板熱加載
架構MVC + Service 4 層Controller 只做參數傳遞

快速開始

環境要求

編譯運行

# 1. 克隆項目
git clone https://github.com/vikim540/Gbootcms.git
cd Gbootcms

# 2. 下載依賴
go mod tidy

# 3. 編譯(產物輸出到 bin/ 目錄)
go build -o bin/gbootcms .

# 4. 運行
./bin/gbootcms

訪問

Docker 部署(規劃中)

docker run -d -p 8080:8080 -v /data/pbootcms:/app/data pbootcms-go

項目結構

pbootcms-go/
├── main.go                      # 入口文件
├── go.mod                       # 依賴管理
├── build.ps1                    # 構建腳本
├── config/
│   └── config.json              # 配置文件
├── apps/
│   ├── admin/                   # 後台管理
│   │   ├── controller/          # Controller 層
│   │   ├── model/               # GORM Model
│   │   ├── service/             # 業務邏輯層
│   │   └── view/                # HTML 模板
│   ├── home/                    # 前台展示
│   │   ├── controller/          # 前台 Controller
│   │   └── model/
│   ├── common/                  # 公共組件
│   │   ├── parser/              # 模板解析器
│   │   └── middleware/          # 中間件
│   └── route/                   # 路由配置
├── core/                        # 核心模塊
│   └── db/                      # 數據庫初始化
├── template/                    # 前台模板
│   └── default/                 # 默認主題
│       ├── comm/                # 公共模板(head/foot)
│       ├── static/              # 主題靜態資源
│       └── index.html
├── static/                      # 全局靜態資源
│   ├── admin/                   # 後台資源
│   ├── upload/                  # 用戶上傳
│   └── images/                  # 公共圖片
├── bin/                         # 編譯產物
├── data/                        # 數據目錄
│   └── pbootcms.db              # SQLite 數據庫
├── docs/                        # 項目文檔
├── runtime/                     # 緩存目錄
└── .plan.md                     # 開發進度記錄

與 PbootCMS PHP 版的兼容性

數據庫兼容 ✅

URL 風格兼容 ✅

模板語法兼容 ✅

配置文件兼容 ✅


性能基準(初步測試)

以下數據為初步測試結果,僅供參考

場景結果
冷啟動時間< 50ms
空閒內存~15MB
並發 goroutine 數數萬級(受限於 SQLite 文件鎖)
首頁響應時間< 10ms(帶數據庫查詢)
後台列表頁響應< 30ms

開發團隊

PbootCMS-Go 由個人開發者獨立完成,旨在為 PbootCMS 社區提供 Go 語言的選擇。


開源協議

本項目採用 Apache License 2.0 開源。

PbootCMS 原項目採用 Apache License 2.0 開源,感謝其優秀的設計和廣泛的用戶基礎。


路線圖

v0.6(當前)— 基礎可用

v1.0 — 功能完善

v2.0 — 工業級


社區


致謝


PbootCMS-Go保留 PbootCMS 的靈魂,擁抱 Go 的速度。

在線諮詢

點擊這裡给我發消息 售前諮詢專員

點擊這裡给我發消息 售後服务專員

在線諮詢

免費通話

24小時免費諮詢

請輸入您的聯繫電話,座機请加區號

免費通話

微信掃一掃

微信聯繫
返回頂部