美文网首页石头剪刀布
为了写操作手册,顺手搭了个文档管理系统

为了写操作手册,顺手搭了个文档管理系统

作者: lupeng | 来源:发表于2018-12-12 15:02 被阅读884次

总是在说任务驱动,什么是任务驱动?简单的说,就是干着一件事的过程中,产生一个新的需求,然后就把另外一件事情给干了。

最近在做一个产品的开发,从设计到推广使用,都是我自己在做,推广使用需要说明文档,也就是操作手册,以前一直觉得,使用word以及邮件的方式实在是太传统了,有太多的弊端:不方便随时更新,不方便汇总。给用户的体验也非常的不好,一封封邮件的发送也着实低效了点。于是,就产生了文档线上的需求。

1. 需求

找个第三方的平台也能基本满足需求,比如在简书创建个专题。但是,想要更好的用户阅读体验,还是需要做成wiki的样式,于是只能自己动手了。如下图wiki文档,左侧为文档目录,右侧为文档内容。线上编辑,线上发布,随时补充更新,以及协同编辑功能等等。简直就是一套系统的赶脚,没错,我就是要搭建一个文档管理系统。

image.png

这么个文档管理系统要是自己开发的话,怎么着也得个把月的时间,有点得不偿失。于是,Google了一下,终于找到一个优秀的产品 - MinDoc,关键还是开源。各方面的细节都做得很好,比如:Markdown支持、协同编辑、响应式页面等等。

该系统的开发者,应该跟我有着类似的需求,然后干脆自己开发了MinDoc,这个在线文档管理系统的侧重点在:日常接口文档,数据库字典,手册说明等文档。该系统还内置项目管理,用户管理,权限管理等功能,能够满足大部分中小团队的文档管理需求。

2. 部署

该系统采用Go语言开发的,部署起来也相当的简单,我使用的Linux服务器,安装的CentOS操作系统。安装Go:yum install go,接来下,直接按照下面的官方安装文档操作即可完成。(以下略作修改,以备后用)

第一步 下载可执行文件

请从 https://github.com/lifei6671/mindoc/releases 下载最新版的可执行文件,一般文件名为 mindoc_linux_amd.tar.gz 或 mindoc_linux_amd64.zip 。

第二步 解压压缩包

请将刚才下载的文件解压,请执行如下命令解压:

tar -xzvf mindoc_linux_amd64.tar.gz
// or
unzip mindoc_linux_amd64.zip -x mindoc

第三步 创建数据库

如果你使用的 mysql 数据库,请创建一个编码为utf8mb4格式的数据库,如果没有GUI管理工具,推荐用下面的脚本创建:

CREATE DATABASE mindoc_db  DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;

如果你使用的是 sqlite 数据库,请将 conf/app.conf 中的数据库配置成如下,系统会自动创建 sqlite 数据库文件:

db_adapter=sqlite3
db_database=mindoc_db

第四步 配置数据库

请将刚才解压目录下 conf/app.conf.example 重名为 app.conf:

cp conf/app.conf.example conf/app.conf

PS. 如果没有找到conf目录,请到github源码上down下来,放到项目根目录里即可。

打开app.conf文件,修改内容如下:

#数据库配置
db_adapter=mysql
#mysql数据库的IP
db_host=127.0.0.1

#mysql数据库的端口号一般为3306
db_port=3306

#刚才创建的数据库的名称
db_database=mindoc_db

#访问数据库的账号和密码
db_username=root
db_password=123456

在 MinDoc 根目录下使用命令行执行如下命令,用于初始化数据库:

./mindoc_linux_amd64 install

稍等一分钟,程序会自动初始化数据库,并创建一个超级管理员账号:admin 密码:123456

第五步 启动程序

执行如下命令启动程序:

#修改可执行权限
chmod +x mindoc_linux_amd64

#启动程序
./mindoc_linux_amd64

此时访问 http://localhost:8181 就能访问 MinDoc 了。

第六步 配置代理

这一步可选,如果你不想用端口号访问 MinDoc 就需要配置一个代理了。Nginx 代理的配置文件如下:

server {
    listen       80;
    #此处应该配置你的域名:
    server_name  webhook.iminho.me;
    charset utf-8;

    #此处配置你的访问日志,请手动创建该目录:
    access_log  /var/log/nginx/webhook.iminho.me/access.log;
    location / {
        try_files /_not_exists_ @backend;
    }

    # 这里为具体的服务代理配置
    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:8181;
    }
}

3. 搞定

安装配置完成之后,就可以通过你的域名,进行访问了。在线进行文档编写,可实时更新,团队协作编写,每一个功能点可谓恰到好处,作为中小团队IT文档的管理系统,绝对能够胜任。

这篇文章就是在上面完成的,点击可以查看。


个人公众账号

相关文章

  • 为了写操作手册,顺手搭了个文档管理系统

    总是在说任务驱动,什么是任务驱动?简单的说,就是干着一件事的过程中,产生一个新的需求,然后就把另外一件事情给干了。...

  • IPO图初相识

    项目逐渐进入收尾阶段,一堆堆验收的文档也接踵而来。前面已经完成了用户操作手册、管理员操作手册、数据库设计文档......

  • “社交营销”项目管理原来如此简单(二十)

    二十:知识管理 上篇我们介绍了“项目文档和配置管理"”。“项目文档和配置管理"包括配置管理是为了系统的控制配置变更...

  • 文档测试

    测试对象:系统提交给用户的文档。 目标:验证用户文档是正确的并且保证操作手册的过程能正确工作。 优点: (1)有助...

  • 信管-第14章-信息文档管理与配置管理

    信息文档管理与配置管理-内容整理笔记 信息系统项目文档及其管理 信息系统项目相关信息(文档) 含义信息系统相关信息...

  • 工作日志 1

    近一个月的工作成果: 1、产品的操作手册撰写和更新; 2、账户管理界面升级项目 包括 学习撰写prd文档(功能点、...

  • 基于电子邮件的文档管理系统

    常见文件管理方式 1、传统文档管理系统,需上传文档到该系统,才能被管理;也可开放爬虫,搜索到后上传到系统。 2、网...

  • Docker

    安装Docker ToolBox Image-镜像 国内源阿里云--登陆进入管理界面,在操作手册选择系统,按步操作...

  • GIT入门学习

    git入门学习 1. 什么是git Git是一个分布式文档管理系统,其特点在与分布式加免费。首先,文档管理系统如g...

  • 开始《美容导师养成手册》写作之旅

    从4月23日老师宣布开始写“操作手册”,到与张总团队共同研讨如何写“操作手册”,再到现在落地开始执行“操作手册”,...

网友评论

    本文标题:为了写操作手册,顺手搭了个文档管理系统

    本文链接:https://www.haomeiwen.com/subject/rzgiqqtx.html