我们很多公司、团队都有在使用语雀进行团队知识库的内容整理,当然有功能是需要付费才可以使用的。对于公司而言是没有多大关系的,付费就付费呗。如果稳定一点省的麻烦的话,如果有第三方工具老左个人也是比较喜欢使用的,如果我们喜欢折腾捣鼓的话,可以找找有没有开源程序。这里我看到这款MM-Wiki源码是有提供一个轻量级的企业知识分享与团队协同软件,可用于快速构建企业 Wiki 和团队知识分享平台。
第一、MM-Wiki 源码特点
部署方便,基于 golang 编写,只需要下载对于平台下二进制文件执行即可。
快速安装程序, 提供方便的安装界面程序,无需任何手动操作。
独立的空间,空间是一组文档的集合,一般为公司部门或者团队,空间下的文档相互独立。空间可根据需求设置空间访问级别。
支持 markdown 语法写作,支持附件上传。
完善的系统权限管理,系统可以自定义角色,并为不同角色授予不同的权限。
集成统一登录,本系统支持通过外部系统认证用户, 比如与公司的 LDAP 登录融合。具体请看登录认证功能。
邮件通知功能,当开启邮件通知,文档更改会通知所有关注该文档的用户。
文档具有分享和下载功能,目前只支持下载 MarkDown 源文件。
支持文档全文搜索
第二、MM-Wiki程序安装
源码地址:https://github.com/phachon/mm-wiki/releases
1、Linux服务器
# 创建目录
$ mkdir mm_wiki
$ cd mm_wiki
# 以 linux amd64 为例,下载最新版本压缩包
# https://github.com/phachon/mm-wiki/releases 自行下载 wget http://
# 解压到当前目录
$ tar -zxvf mm-wiki-linux-amd64.tar.gz
# 进入程序安装目录
$ cd install
# 执行安装程序,默认端口为 8090,指定其他端口加参数 --port=8087
$ ./install
# 浏览器访问 http://ip:8090 进入安装界面,完成安装配置
# Ctrl + C 停止 install 程序, 启动 MM-Wiki 系统
$ cd ..
$ ./mm-wiki --conf conf/mm-wiki.conf
# 浏览器访问你监听的 ip 和端口
# 开始 MM-Wiki 的使用之旅吧!
2、Windows
# 以 windows amd64 为例,下载最新版本压缩包
# https://github.com/phachon/mm-wiki/releases 自行下载
# 手动解压到当前目录
# 进入 install 目录
# 双击点开 install.exe 文件
# 浏览器访问 http://ip:8090 进入安装界面,完成安装配置
# 关闭刚刚点开的 install 窗口
# 使用 windows 命令行工具(cmd.exe)进入程序根目录
$ 执行 mm-wiki.exe --conf conf/mm-wiki.conf
# 浏览器访问你监听的 ip 和端口
# 开始 MM-Wiki 的使用之旅吧!
3、Docker 部署
# 数据库准备
# 导入docs/databases/data.sql和docs/databases/table.sql(注:需取消注释data.sql中第一条管理用户插入语句)# 两种部署方式可用
# DockerHub(推荐)
# 从DockerHub下载v0.1.7版本
# 新增配置文件,数据存放目录以及Mysql数据库配置在mm-wiki.conf配置文件中设置
# 挂载配置文件及数据存放目录,启动端口为8080
# docker run -d -p 8080:8081 -v /data/mm-wiki/conf/:/opt/mm-wiki/conf/ -v /data/mm-wiki/data:/data/mm-wiki/data/ --name mm-wiki eahom/mm-wiki:v0.1.7# 本地构建最新代码
# 构建项目镜像
# docker build -t mm-wiki-image .
# 新增配置文件,数据存放目录以及Mysql数据库配置在mm-wiki.conf配置文件中设置
# 挂载配置文件及数据存放目录,启动端口为8080
# docker run -d -p 8080:8081 -v /data/mm-wiki/conf/:/opt/mm-wiki/conf/ -v /data/mm-wiki/data/:/data/mm-wiki/data/ --name mm-wiki mm-wiki-image
反代设置:
upstream frontends {
server 127.0.0.1:8088; # MM-Wiki 监听的ip:port
}
server {
listen 80;
server_name wiki.intra.xxxxx.com www.wiki.intra.xxxxx.com;
location / {
proxy_pass_header Server;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://frontends;
}
# 静态资源交由nginx管理
location /static {
root /www/mm-wiki; # MM-Wiki 的根目录
expires 1d;
add_header Cache-Control public;
access_log off;
}
}