演示環境:https://www.iminho.me/wiki/
MinDoc 是一款針對IT團隊開發的簡單好用的文檔管理系統。
MinDoc 的前身是 SmartWiki 文檔系統。SmartWiki 是基於 PHP 框架 laravel 開發的一款文檔管理系統。因 PHP 的部署對普通用戶來說太復雜,所以改用 Golang 開發。可以方便用戶部署和實用,同時增加Markdown和HTML兩種編輯器。
開發緣起是公司IT部門需要一款簡單實用的項目接口文檔管理和分享的系統。其功能和界面源於 kancloud 。
可以用來儲存日常接口文檔,數據庫字典,手冊說明等文檔。內置項目管理,用戶管理,權限管理等功能,能夠滿足大部分中小團隊的文檔管理需求。
主要功能:
-
項目管理,可以對項目進行編輯更改,成員添加等。
-
文檔管理,添加和刪除文檔等。
-
評論管理,可以管理文檔評論和自己發布的評論。
-
用戶管理,添加和禁用用戶,個人資料更改等。
-
用戶權限管理 , 實現用戶角色的變更。
-
項目加密,可以設置項目公開狀態,私有項目需要通過Token訪問。
-
站點配置,可開啟匿名訪問、驗證碼等。
項目截圖:
創建項目
項目列表
項目概述
項目成員
項目設置
基於Editor.md開發的Markdown編輯器
基於wangEditor開發的富文本編輯器
項目預覽
超級管理員后台
-------------------------------------------------
GitHub:https://github.com/lifei6671/mindoc
GitHub - README.md
MinDoc 簡介
MinDoc 是一款針對IT團隊開發的簡單好用的文檔管理系統。
MinDoc 的前身是 SmartWiki 文檔系統。SmartWiki 是基於 PHP 框架 laravel 開發的一款文檔管理系統。因 PHP 的部署對普通用戶來說太復雜,所以改用 Golang 開發。可以方便用戶部署和實用。
開發緣起是公司IT部門需要一款簡單實用的項目接口文檔管理和分享的系統。其功能和界面源於 kancloud 。
可以用來儲存日常接口文檔,數據庫字典,手冊說明等文檔。內置項目管理,用戶管理,權限管理等功能,能夠滿足大部分中小團隊的文檔管理需求。
演示站點: http://doc.iminho.me
安裝與使用
如果你的服務器上沒有安裝golang程序請手動設置一個環境變量如下:鍵名為 ZONEINFO,值為MinDoc跟目錄下的/lib/time/zoneinfo.zip 。
更多信息請查看手冊: MinDoc 使用手冊
對於沒有Golang使用經驗的用戶,可以從 https://github.com/lifei6671/mindoc/releases 這里下載編譯完的程序。
如果有Golang開發經驗,建議通過編譯安裝,在此之前,您需要先安裝Golang官方包管理工具,詳見Install dep。
git clone https://github.com/lifei6671/mindoc.git
dep ensure
go build -ldflags "-w" ./mindoc install ./mindoc
MinDoc 如果使用MySQL儲存數據,則編碼必須是utf8mb4_general_ci
。請在安裝前,把數據庫配置填充到項目目錄下的 conf/app.conf
中。
如果使用 SQLite
數據庫,則直接在配置文件中配置數據庫路徑即可.
如果conf目錄下不存在 app.conf
請重命名 app.conf.example
為 app.conf
。
默認程序會自動初始化一個超級管理員用戶:admin 密碼:123456 。請登錄后重新設置密碼。
#郵件配置 #是否啟用郵件 enable_mail=true #smtp服務器的賬號 smtp_user_name=admin@iminho.me #smtp服務器的地址 smtp_host=smtp.ym.163.com #密碼 smtp_password=1q2w3e__ABC #端口號 smtp_port=25 #郵件發送人的地址 form_user_name=admin@iminho.me #郵件有效期30分鍾 mail_expired=30
使用Docker部署
如果是Docker用戶,可參考項目內置的Dockerfile文件編譯鏡像。
在啟動鏡像時需要提供如下的環境變量:
DB_ADAPTER 制定 DB
MYSQL_PORT_3306_TCP_ADDR MySQL地址
MYSQL_PORT_3306_TCP_PORT MySQL端口號
MYSQL_INSTANCE_NAME MySQL數據庫名稱
MYSQL_USERNAME MySQL賬號
MYSQL_PASSWORD MySQL密碼
HTTP_PORT 程序監聽的端口號
舉個栗子
docker run -p 8181:8181 --name mindoc -e DB_ADAPTER=mysql -e MYSQL_PORT_3306_TCP_ADDR=10.xxx.xxx.xxx -e MYSQL_PORT_3306_TCP_PORT=3306 -e MYSQL_INSTANCE_NAME=mindoc -e MYSQL_USERNAME=root -e MYSQL_PASSWORD=123456 -e httpport=8181 -d daocloud.io/lifei6671/mindoc:latest
docker-compose 一鍵安裝
-
修改配置文件 修改
docker-compose.yml
中的配置信息,主要修改volumes
節點,將宿主機的兩個目錄映射到容器內。environment
節點,配置自己的環境變量。 -
一鍵完成所有環境搭建
docker-compose up -d
-
瀏覽器訪問
整個部署完成了
-
常用命令參考
- 啟動
docker-compose up -d
- 停止
docker-compose stop
- 重啟
docker-compose restart
- 停止刪除容器,釋放所有資源
docker-compose down
- 刪除並重新創建
docker-compose -f docker-compose.yml down && docker-compose up -d 更多 docker-compose 的使用相關的內容 請查看官網文檔或百度
- 啟動
項目截圖
創建項目
項目列表
項目概述
項目成員
項目設置
基於Editor.md開發的Markdown編輯器
基於wangEditor開發的富文本編輯器
項目預覽
超級管理員后台
使用的技術
- beego 1.10.0
- mysql 5.6
- editor.md Markdown 編輯器
- bootstrap 3.2
- jquery 庫
- webuploader 文件上傳框架
- Nprogress 庫
- jstree 樹狀結構庫
- font awesome 字體庫
- cropper 圖片剪裁庫
- layer 彈出層框架
- highlight 代碼高亮庫
- to-markdown HTML轉Markdown庫
- quill 富文本編輯器
- vue 框架
主要功能
- 項目管理,可以對項目進行編輯更改,成員添加等。
- 文檔管理,添加和刪除文檔等。
- 評論管理,可以管理文檔評論和自己發布的評論。
- 用戶管理,添加和禁用用戶,個人資料更改等。
- 用戶權限管理 , 實現用戶角色的變更。
- 項目加密,可以設置項目公開狀態,私有項目需要通過Token訪問。
- 站點配置,可開啟匿名訪問、驗證碼等。
參與開發
我們歡迎您在 MinDoc 項目的 GitHub 上報告 issue 或者 pull request。
如果您還不熟悉GitHub的Fork and Pull開發模式,您可以閱讀GitHub的文檔(https://help.github.com/articles/using-pull-requests) 獲得更多的信息。
關於作者
一個不純粹的PHPer,一個不自由的 gopher 。
支持 MinDoc