美文网首页工具推荐
MinDoc搭建企业WIKI

MinDoc搭建企业WIKI

作者: 西伯利亚狼_ | 来源:发表于2018-12-26 18:04 被阅读198次

1. 简介

MinDoc 是一款针对IT团队开发的简单好用的文档管理系统。使用Golang开发,部署方便,同时支持MarkDown和HTML两种编辑器。MinDoc还集成了calibre使系统可以导出word、mobi、epub和pdf四种格式的文档。

2. 准备相关软件包

3. 安装

源码编译安装软件,必要要有配套的系统工具才可以。在Ubuntu系统中主要为gcc|g++|make,通过命令sudo apt install gcc g++ make -y安装。

  • MySQL

    提供功能:

    1. 存储mindoc的数据
    juzhen@MinDoc:~$ sudo dpkg -i mysql-apt-config_0.7.3-1_all.deb
    juzhen@MinDoc:~$ sudo apt-get update
    juzhen@MinDoc:~$ sudo apt-get install mysql-server #password=mindoc
    juzhen@MinDoc:~$ sudo systemctl start mysql
    
  • Nginx

    提供功能:

    1. 代理客户端对MinDoc的访问(反向代理)
    2. https协议加密传输 (openssl支持的SSL加密)
    3. 数据压缩传输 (zlib支持的gzip)
    4. 80端口重定向至443端口 (pcre支持的rewrite)
    juzhen@MinDoc:~$ tar xf nginx-1.14.2.tar.gz
    juzhen@MinDoc:~$ tar xf OpenSSL_1_1_0j.tar.gz
    juzhen@MinDoc:~$ tar xf pcre-8.42.tar.gz
    juzhen@MinDoc:~$ tar xf zlib-1.2.11.tar.gz
    juzhen@MinDoc:~$ cd nginx-1.14.2/
    juzhen@MinDoc:~/nginx-1.14.2$ ./configure --prefix=/opt/nginx --with-http_stub_status_module --with-  http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --with-  openssl=../openssl-OpenSSL_1_1_0j --with-pcre=../pcre-8.42 --with-zlib=../zlib-1.2.11 && sudo make &&   sudo make install
    
  • MinDoc
    mindoc的安装包是已经编译好的二进制文件,不需要单独安装,只需要解压到目标目录下即可

    juzhen@MinDoc:~$ sudo mkdir /opt/mindoc
    juzhen@MinDoc:~$ sudo chown -R juzhen.juzhen /opt/mindoc
    juzhen@MinDoc:~$ sudo unzip mindoc_linux_amd64.zip -d /opt/mindoc
    juzhen@MinDoc:~$ sudo cd /opt/mindoc && sudo ./mindoc_linux_amd64 service install #安装mindoc为系统服务,位置: /etc/systemd/system/mindocd.service
    
  • Calibre
    calibre官方提供了linux下的二进制安装包,我们直接下载解压即可使用。

    juzhen@MinDoc:~$ wget https://download.calibre-ebook.com/3.36.0/calibre-3.36.0-x86_64.txz
    juzhen@MinDoc:~$ sudo mkdir /opt/calibre && sudo tar xf  calibre-3.36.0-x86_64.txz -C /opt/calibre/
    juzhen@MinDoc:~$ sudo ln -s /opt/calibre/ebook-convert /usr/bin/ #最后的这个路径可以为系统的PATH路径下的任意一个,主要是为了可以在系统环境下直接执行ebook-convert命令
    
  • wkhtmltopdf
    wkhtmltopdf工具可以将html页面转换为pdf文件,linux系统中经常会出现中文乱码的情况,我们把windows系统的宋体上传到linux系统的/usr/share/fonts目录下即可。

    juzhen@MinDoc:~$ wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox_0.12.5-1.xenial_amd64.deb
    juzhen@MinDoc:~$ sudo dpkg -i wkhtmltox_0.12.5-1.xenial_amd64.deb
    

    如果有报错,根据提示安装依赖的软件包即可。

4. 配置启动

  • MySQL

    1. mysql我们保持默认配置不动。
    2. 启动mysql
      service start mysql
    3. 创建数据库。
    mysql> CREATE DATABASE mindoc_db  DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;
    
    1. 授权mindoc用户管理mindoc的数据库
    mysql> GRANT ALL PRIVILEGES ON mindoc_db.* TO '  mindoc'@'127.0.0.1' IDENTIFIED BY 'mindoc';
    mysql> FLUSH PRIVILEGES;
    
  • Nginx
    nginx需要配置ssl功能,并且作为mindoc的代理服务来使用。CA证书这部分自行百度即可,这里不做任何说明。主要配置如下:

    server {
      listen 80;
      server_name  mindoc.juzix.net;
      location / {
          return 301 https://$host$request_uri;
      }
    }
    server {
      listen 443 ssl;
      server_name  mindoc.juzix.net;
      ssl_certificate      juzhen.crt;
      ssl_certificate_key  juzhen.key;
      ssl_session_cache    shared:SSL:1m;
      ssl_session_timeout  5m;
      ssl_ciphers  HIGH:!aNULL:!MD5;
      ssl_prefer_server_ciphers  on;
      ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
      charset utf-8;
      client_max_body_size 1G;
      location / {
          proxy_pass http://localhost:8181;
          proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-Proto $scheme; #如果启用了https就必须添加这个选项
      }
    }
    
  • MinDoc

    1. 配置文件位于 /opt/mindoc/conf下面,文件名为app.conf。主要修改数据库和ldap部分,配置如下所示:
    ---session---
    sessionprovider=file
    sessionproviderconfig=./runtime/session
    ---DB---
    db_adapter=mysql
    db_host=127.0.0.1
    db_port=3306
    db_database=mindoc_db
    db_username=mindoc
    db_password=mindoc
    ---export item---
    enable_export="true" #启用项目导出
    ---upload file---
    upload_file_size=1000MB #上传文件大小限制为1G,同时在nginx的配置中添加"client_max_body_size 1G;"
    ---LDAP---
    ldap_enable=true #开启ldap
    ldap_host=192.168.18.52 #openldap服务所在服务器IP
    ldap_port=389
    ldap_attribute=uid #以ldap的哪个属性作为mindoc系统的用户名
    ldap_base=DC=juzhen,DC=io #基础搜索域
    ldap_user=CN=Manager,DC=juzhen,DC=io #管理员账户
    ldap_password=juzhenldap123 #管理员密码
    ldap_user_role=2 #ldap用户注册之后的用户role为普通用户
    ldap_filter=objectClass=posixAccount
    
    1. 配置文件修改完成后,执行命令./mindoc_linux_amd64 install完成数据库的初始化
    2. 启动MinDoc服务
      sudo service start mindocd

至此,MinDoc的环境搭建就完成了。那么,接下来再写一下备份的事情就算结束了。

5. 备份

备份分为数据库和mindoc文件备份两部分。

  • 数据库
    执行下面的命令即可完整的备份mindoc的数据,将此命令做成定时任务即可完成日常的备份数据库备份工作。

    ~]$ mysqldump -umindoc -pmindoc -h127.0.0.1 --databases mindoc_db --default-character-set utf8 --single-transaction --add-drop-table --routines --events --triggers > mindoc_db_$(date +'%Y%m%d%H%M%S').sql
    
  • mindoc文件
    mindoc文件备份就比较简单粗暴了,直接将/opt/mindoc目录打包,放到备份目录下即可,命令如下:

    ~]$ sudo tar -zcvf mindoc_$(date +'%Y%m%d%H%M').tar.gz /opt/mindoc
    ~]$ sudo mv mindoc_xxxxx.tar.gz /path/backup/
    

6. 密码修改

如果管理员或者用户忘记了密码,管理员可以直接在服务器端使用命令重置密码。执行命令如下:

juzhen@MinDoc:/opt/mindoc$ ./mindoc_linux_amd64 password -account admin -password 123456

参考链接
  1. https://www.iminho.me
  2. http://nginx.org/en/docs/http/configuring_https_servers.html
  3. https://wkhtmltopdf.org
  4. https://download.calibre-ebook.com
  5. https://calibre-ebook.com
  6. http://nginx.org/en/docs/configure.html
  7. https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en

相关文章

  • MinDoc搭建企业WIKI

    1. 简介 MinDoc 是一款针对IT团队开发的简单好用的文档管理系统。使用Golang开发,部署方便,同时支持...

  • 搭建wiki

    Confluence是一个专业的wiki程序。它是一个知识管理的工具,通过它可以实现团队成员之间的协作和知识共享。...

  • Hexo搭建WiKi

    2015-4-30 第一次编写 2015-05-01 更新增加了 Travis CI 的部分 0x01准备: to...

  • wiki网站搭建

    尝试了使用两种wiki网站:MediaWiKi、dukuwiki和HDWiKi,这三个都是php搭建的,其中duk...

  • wiki 搭建指南

    wiki.js 参考文档:https://docs.requarks.io/[https://docs.requa...

  • [fastdfs] dockerfile搭建fastdfs分布式

    [fastdfs] dockerfile搭建fastdfs分布式集群 具体搭建过程参照官方wiki: https:...

  • mindoc迁移

    1.先备份/mindoc/database 和 /mindoc/uploads2.如果访问用的是ip需要使用na...

  • 一款简单好用的文档管理系统:MinDoc安装教程

    简介 MinDoc是一款针对IT团队开拓的简单好用的文档管理系统。 MinDoc的前身是SmartWiki文档系统...

  • MinDoc接口文档在线管理系统

    MinDoc 是一款针对IT团队开发的简单好用的文档管理系统。看到公司的文档编写使用的是这款软件,这里搭建一下Mi...

  • MicroPython之LPC1788移植

    环境搭建 环境搭建就不多说了,按照官方的wiki进行搭建就好了。 移植步骤 说明 micropytho使用gcc进...

网友评论

    本文标题:MinDoc搭建企业WIKI

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