总是在说任务驱动,什么是任务驱动?简单的说,就是干着一件事的过程中,产生一个新的需求,然后就把另外一件事情给干了。最近在做一个产品的开发,从设计到推广使用,都是我自己在做,推广使用需要说明文档,也就是操作手册,以前一直觉得,使用word以及邮件的方式实在是太传统了,有太多的弊端:不方便随时更新,不方便汇总。给用户的体验也非常的不好,一封封邮件的发送也着实低效了点。于是,就产生了文档线上的需求。
1. 需求
找个第三方的平台也能基本满足需求,比如在简书创建个专题。但是,想要更好的用户阅读体验,还是需要做成wiki的样式,于是只能自己动手了。如下图wiki文档,左侧为文档目录,右侧为文档内容。线上编辑,线上发布,随时补充更新,以及协同编辑功能等等。简直就是一套系统的赶脚,没错,我就是要搭建一个文档管理系统。
这么个文档管理系统要是自己开发的话,怎么着也得个把月的时间,有点得不偿失。于是,Google了一下,终于找到一个优秀的产品 -MinDoc,关键还是开源。各方面的细节都做得很好,比如:Markdown支持、协同编辑、响应式页面等等。该系统的开发者,应该跟我有着类似的需求,然后干脆自己开发了MinDoc,这个在线文档管理系统的侧重点在:日常接口文档,数据库字典,手册说明等文档。该系统还内置项目管理,用户管理,权限管理等功能,能够满足大部分中小团队的文档管理需求。
2. 部署
该系统采用Go语言开发的,部署起来也相当的简单,我使用的Linux服务器,安装的CentOS操作系统。安装Go:,接来下,直接按照下面的官方安装文档操作即可完成。(以下略作修改,以备后用)第一步 下载可执行文件请从https://github.com/lifei6671/mindoc/releases下载最新版的可执行文件,一般文件名为 mindoc_linux_amd.tar.gz 或 mindoc_linux_amd64.zip 。第二步 解压压缩包请将刚才下载的文件解压,请执行如下命令解压:
第三步 创建数据库如果你使用的 mysql 数据库,请创建一个编码为utf8mb4格式的数据库,如果没有GUI管理工具,推荐用下面的脚本创建:
CREATEDATABASEmindoc_dbDEFAULTCHARSETutf8mb4COLLATEutf8mb4_general_ci;
如果你使用的是 sqlite 数据库,请将 conf/app.conf 中的数据库配置成如下,系统会自动创建 sqlite 数据库文件:
第四步 配置数据库请将刚才解压目录下 conf/app.conf.example 重名为 app.conf:
PS. 如果没有找到目录,请到github源码上down下来,放到项目根目录里即可。打开文件,修改内容如下:
在 MinDoc 根目录下使用命令行执行如下命令,用于初始化数据库:
稍等一分钟,程序会自动初始化数据库,并创建一个超级管理员账号:密码:第五步 启动程序执行如下命令启动程序:
此时访问http://localhost:8181就能访问 MinDoc 了。第六步 配置代理这一步可选,如果你不想用端口号访问 MinDoc 就需要配置一个代理了。Nginx 代理的配置文件如下:
3. 搞定
安装配置完成之后,就可以通过你的域名,进行访问了。在线进行文档编写,可实时更新,团队协作编写,每一个功能点可谓恰到好处,作为中小团队IT文档的管理系统,绝对能够胜任。
领取专属 10元无门槛券
私享最新 技术干货