MinDoc 简介
MinDoc 是一款针对IT团队开发的简单好用的文档管理系统。
MinDoc 的前身是 SmartWiki 文档系统。SmartWiki 是基于 PHP 框架 laravel 开发的一款文档管理系统。因 PHP 的部署对普通用户来说太复杂,所以改用 Golang 开发。可以方便用户部署和实用。
可以用来储存日常接口文档,数据库字典,手册说明等文档。内置项目管理,用户管理,权限管理等功能,能够满足大部分中小团队的文档管理需求。
官方说明文档:
https://demo.mindoc.cn/docs/mindochelp
下面我们结合宝塔面板在服务器上布署这个好用的在线文档系统。
1、要准备好一个域名,比如我现在用的是doc.abc.com,将其解析到服务器上
2、配置好Golang环境
从下面的链接下载好Golang和MinDoc源码包,回复可见。
[hide]
https://pan.baidu.com/s/1At7akrP_6wcCAevMYiFa-A?pwd=48hv
[/hide]
Golang源码包也可以自行去其官网下载:
3、打开宝塔的文件管理,/www/server/下建立名称为go的文件夹,将下载好的 Golang 源码包上传到此目录并解压;
4、上传成功后解压,程序会在go目录下新增一个go子文件夹,需要把它前切到当前go目录,解压好的go目录文件列表如下:
5、打开/etc/profile,在 profile 文件最底部添加以下代码,如下图:
export GOROOT=/www/server/go
export GOBIN=$GOROOT/bin
export GOPKG=$GOROOT/pkg/tool/linux_amd64
export GOARCH=amd64
export GOOS=linux
export GOPATH=/www/wwwroot/Golang
export PATH=$PATH:$GOBIN:$GOPKG:$GOPATH/bin

6、SSH连上服务器,执行 source /etc/profile 命令使其生效,使用 go version 命令来测试Go语言环境是否安装成功,如下图:
source /etc/profile
go version
如此则完成了Golang环境搭建。
7、宝塔面板先建立一个网站,域名使用上面解析好的doc.abc.com,数据库编码选择utf8mb4,如下图,添加成功后记好数据库信息备用。

8、将上面一起下载好的MinDoc源码包,上传到新建网站的根目录:

9、修改 conf/app.conf 配置文件,有两处地方需要修改:
其一baseurl,将下方的IP+端口那一条禁用,将上方动态引用的那一条启用(前面的#增加即为禁用,删除即为启用)。默认端口见httpport,为8182,可以根据自己的情况修改。这里我就不动了,因为后期我是要反向代理的,用什么端口都无所谓。
其二填写数据库类型、数据库名、用户名和密码,如下图:
10、SSH远程连接上服务器,在root帐户下执行如下命令初始化数据库,如下图:
cd /www/wwwroot/mindoc
./mindoc_linux_musl_amd64 install
提示 Install Successfully 说明已经安装完成。程序默认会自动建立一个超级管理员帐户admin,初始密码123456
11、执行如下命令启动MinDoc程序:
chmod +x mindoc_linux_musl_amd64
./mindoc_linux_musl_amd64
此时在浏览器输入ip:8182 就可以使用文档管理系统了(宝塔防火墙需要放行8182)。有些服务器还需要在后台开通相应端口。
12、打开doc.abc.com网站的设置面板,先申请一个SSL证书,这样我们就可以用https://doc.abc.com的方式来安全使用mindoc系统了。
13、再转到反向代理,添加一则反向代理条例:
●代理名称:mindoc(任意写)
●目标URL:http://127.0.0.1:8182
●发送域名:$host
●内容替换:留空
接下来我们用https://doc.abc.com访问试一下:
可以正常访问。
但是,登陆后台会提示系统错误:
14、我们先去把那个反向代理删掉,
选择下一种反向代理方式:
在配置文件里,最后一个大括号前增加如下代码:
# 这里为具体的服务代理配置
location @backend {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
#此处配置 MinDoc 程序的地址和端口号
proxy_pass http://127.0.0.1:8182;
} 
如此我们即可以用https://doc.abc.com正常登陆了。
备注:一些可能会用到的命令备忘:
以服务的方式运行:
#安装服务
./mindoc_linux_musl_amd64 service install
#卸载服务
./mindoc_linux_musl_amd64 service remove启动mindoc,并设置开机自启动
systemctl start mindocd
systemctl enable mindocd修改管理员密码
./mindoc_linux_musl_amd64 password -account admin -password 123456直接从数据库修改密码
假如你知道一个人的密码,直接将数据库md_member 中的 password 字段变更成已知的密码密文即可。查看当前mindoc版本:
./mindoc version会看到如下的版本信息:
#当前安装的版本版本号
MinDoc current version => v1.0
#最新版本版本号
MinDoc last version => v1.0找回密码的邮件配置
邮件配置信息位于 conf/app.conf 中:
####################邮件配置######################
#是否启用邮件
enable_mail=false
#每小时限制指定邮箱邮件发送次数
mail_number=5
#smtp服务用户名
[email protected]
#smtp服务器地址
smtp_host=smtp.ym.163.com
#smtp密码
smtp_password=
#端口号
smtp_port=25
#发送邮件的显示名称
[email protected]
#邮件有效期30分钟
mail_expired=30
#加密类型NONE 无认证、SSL 加密、LOGIN 普通用户登录
secure=SSL


站长有话要说,整体使用下来感觉不错。美中不足的是,图片没办法自动添加水印。