Rat's

一个轻量级的企业Wiki和团队知识分享平台:MM-Wiki搭建教程
说明:很早前有小伙伴问了下有没有团队wiki程序,最近好像看到了个MM-Wiki,感觉还不错,一个轻量级的企业知识...
扫描右侧二维码阅读全文
17
2019/07

一个轻量级的企业Wiki和团队知识分享平台:MM-Wiki搭建教程

说明:很早前有小伙伴问了下有没有团队wiki程序,最近好像看到了个MM-Wiki,感觉还不错,一个轻量级的企业知识分享与团队协同软件,可用于快速构建企业Wiki和团队知识分享平台。部署方便,使用简单,帮助团队构建一个信息共享、文档管理的协作环境,安装也是很简单的,毕竟是基于Golang,这里就介绍下。

截图

请输入图片描述
请输入图片描述
请输入图片描述
请输入图片描述

特点

  • 部署方便,基于golang编写,只需要下载对于平台下二进制文件执行即可。
  • 快速安装程序, 提供方便的安装界面程序,无需任何手动操作。
  • 独立的空间,空间是一组文档的集合,一般为公司部门或者团队,空间下的文档相互独立。空间可根据需求设置空间访问级别。
  • 完善的系统权限管理,系统可以自定义角色,并为不同角色授予不同的权限。
  • 集成统一登录,本系统支持通过外部系统认证用户, 比如与公司的LDAP登录融合。具体请看登录认证功能。
  • 邮件通知功能,当开启邮件通知,文档更改会通知所有关注该文档的用户。
  • 文档具有分享和下载功能,目前只支持下载MarkDown源文件。

安装

Github地址:https://github.com/phachon/mm-wiki

1、安装Mysql
你有宝塔的,直接在宝塔上安装Mysql,安装过的可以跳过,直接进行下一步,没有安装的可以手动安装下。

#CentOS 6系统
rpm -ivh http://repo.mysql.com/mysql57-community-release-el6.rpm
yum install mysql-community-server -y
service mysqld start
chkconfig mysqld on

#CentOS 7系统
rpm -ivh http://repo.mysql.com/mysql57-community-release-el7.rpm
yum install mysql-community-server -y
systemctl start mysqld
systemctl enable mysqld

#Debian/Ubuntu系统
apt update
apt install mysql-server -y

如果DebianUbuntu在安装期间有弹出窗口要你输入密码就设置一个,没有的话密码就是空格。

对于CentOS安装MySQL 5.7的时候会生成一个随机密码,使用命令查看:

grep "password" /var/log/mysqld.log
#大致信息,******为密码
[Note] A temporary password is generated for root@localhost: ******

然后接下来CentOS和安装期间没要求输入密码的DebianUbuntu,就需要修改数据库密码:

#CentOS系统,第一行passwd为你上面看到的密码,第四行moerats为要修改的密码,均自行修改
mysql -u root -ppasswd
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=4;
mysql> set password=password("moerats");
mysql> exit;

#Debian、Ubuntu系统,第一行登录数据库的时候直接Enter跳过,第二行moerats为要修改的密码,自行修改
mysql -u root -p
mysql> UPDATE mysql.user SET authentication_string=PASSWORD('moerats'), PLUGIN='mysql_native_password' WHERE USER='root';
mysql> exit;

最后修改过密码的还需要重启数据库:

#CentOS 6
service mysqld restart
#CentOS 7
systemctl restart mysqld
#Debian和Ubuntu
systemctl restart mysql

此时Mysql算是安装完成了。

2、安装mmwiki
先找到最新版本的二进制,地址→传送门,这里使用Linux VPS搭建,所以找到Linux版本即可,32位的为38664位的为amd64

使用命令:

#创建并进入wiki目录
mkdir /root/mmwiki
cd $_
#下载最新版二进制,这里为64位系统,32位自行替换二进制链接
wget https://github.com/phachon/mm-wiki/releases/download/v0.1.3/mm-wiki-linux-amd64.tar.gz
#解压并删除压缩包
tar -zxvf mm-wiki-linux-amd64.tar.gz && rm -rf mm-wiki-linux-amd64.tar.gz
#安装程序,这里运行端口为9999,自行修改
install/install --port=9999

接下来访问ip:9999进入安装配置,如果你使用ip访问,监听地址填0.0.0.0,用域名的话,填127.0.0.1即可,监听端口可以继续填9999

对于CentOS系统,访问不了安装界面的话,还需要开启9999端口,开启如下:

#CentOS 6
iptables -I INPUT -p tcp --dport 9999 -j ACCEPT
service iptables save
service iptables restart

#CentOS 7
firewall-cmd --zone=public --add-port=9999/tcp --permanent
firewall-cmd --reload

像阿里云等,还需要额外在安全组开放端口。

配置好了后,再使用Ctrl+C断开运行,此时程序还没启动,接下来我们还需要启动下。

先新建Systemd配置文件,只适用于CentOS 7Debian 8+Ubuntu 16+等。

#修改下mmwiki源码路径即可,然后一起复制到SSH运行
cat > /etc/systemd/system/mmwiki.service <<EOF
[Unit]
Description=mmwiki
After=network.target
Wants=network.target

[Service]
Type=simple
PIDFile=/var/run/mmwiki.pid
WorkingDirectory=/root/mmwiki
ExecStart=/root/mmwiki/mm-wiki --conf conf/mm-wiki.conf
RestartPreventExitStatus=23
Restart=always

[Install]
WantedBy=multi-user.target
EOF

启动并开机自启:

systemctl start mmwiki
systemctl enable mmwiki

其它系统直接使用命令启动:

nohup /root/mmwiki/mm-wiki --conf conf/mm-wiki.conf &

此时访问地址就是ip:9999,即你安装的时候,填的监听端口9999或其它。如果你想设置域名,继续往下面看。

域名访问

反代可以用NginxApacheCaddy,这里只说宝塔和Caddy。如果你网站有宝塔,就可以使用宝塔进行反代,如果没有,建议使用第2种的Caddy反代,配置很快。

1、宝塔面板
点击左侧网站,添加站点,然后再点击添加好了的域名名称,这时候就进入了站点配置,点击反向代理,目标URL填入http://127.0.0.1:9999,再启用反向代理,然后点击SSL,申请免费的Let's Encrypt证书,并强制HTTPS

2、使用Caddy
安装Caddy

wget -N --no-check-certificate https://raw.githubusercontent.com/iiiiiii1/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh
#备用地址
wget -N --no-check-certificate https://www.moerats.com/usr/shell/Caddy/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh

配置Caddy

#以下全部内容是一个整体,请修改域名和反代端口后一起复制到SSH运行!
echo "www.moerats.com {
 gzip
 tls admin@moerats.com
 proxy / 127.0.0.1:9999 {
    header_upstream Host {host}
    header_upstream X-Real-IP {remote}
    header_upstream X-Forwarded-For {remote}
    header_upstream X-Forwarded-Port {server_port}
    header_upstream X-Forwarded-Proto {scheme}
  }
}" > /usr/local/caddy/Caddyfile

tls参数会自动帮你签发ssl证书,如果你要使用自己的ssl,改为tls /root/xx.crt /root/xx.key即可。后面为ssl证书路径。

启动Caddy:

/etc/init.d/caddy start

就可以打开域名进行访问了。

Vultr新用户注册送100美元/16个机房按小时计费,支持支付宝,【点击查看】。
最后修改:2019 年 07 月 19 日 12 : 07 AM

发表评论 取消回复

28 条评论

  1. 九凌网络

    好用吗,我想问一下

  2. 运维学习笔记博客

    为啥不说Nginx?

    1. Rat's
      @运维学习笔记博客

      在端口反代方面,caddy更简单

  3. fay

    搭建好了不知道怎么添加文档。。。

  4. bcaso

    学习了

  5. 孙先生

    装了n次了,不成功!小白一个,一步一步复制命令安装的,就是无法访问,打不开。。。。个人觉得问题出在中间,肯定那个地方少了代码。

    1. Rat's
      @孙先生

      你看下哪里有没有报错啥的

      1. 孙先生
        @Rat's

        我直接录制视频吧

  6. sanqian

    博主~有没有那种类似于公共wiki(例如百度百科,维基百科)的项目啊

    1. 云点
      @sanqian

      wiki有一套专门的开源系统,具体名字忘了

    2. R彦祖
      @sanqian

      维基百科本身的开源的,见mediawiki

    3. Rat's
      @sanqian

      好像见过,但是忘了

      1. sanqian
        @Rat's

        话说考虑出一下GitBook之类的教程嘛

        1. Rat's
          @sanqian

          我先了解下这个

  7. lala

    看起来不错

  8. 孙先生

    博主,教程不够详细,被坑到了,在教程中,Ctrl + C 停止 install 程序, 但是没有启动 MM-Wiki 系统。我怎么也访问不了。后来查到了启动系统的命令。哎。。。小白!
    cd ..
    ./mm-wiki --conf conf/mm-wiki.conf

    1. Rat's
      @孙先生

      其实照着做完就行了,后面有启动步骤,我在中间多加几个字吧。

  9. lexo

    谢谢博主

  10. 奶爸建网站笔记

    正好差这个东西,博主还接触过其他类型的没有,是不是这个最好用?

    1. Rat's
      @奶爸建网站笔记

      好不好用得看自己体验,其它的wiki发了几个,可以在最上面搜索框搜索wiki。

      1. 奶爸建网站笔记
        @Rat's

        我想说的是,WordPress和typecho的搜索功能都一样烂。

        1. Rat's
          @奶爸建网站笔记

          我也觉得烂,特别是ty。

          1. bingwong
            @Rat's

            我想看看demo就是想知道这个wiki的搜索功能如何。。之前用hexo-theme-Wikitten 可以实现即时搜索