MM-Wiki 是一个轻量级的企业知识分享与团队协同软件,可用于快速构建企业 Wiki 和团队知识分享平台。部署方便,使用简单,帮助团队构建一个信息共享、文档管理的协作环境。
前面的文章也讲过如何部署,不过是基于手动安装,这次因为MM-Wiki 出了docker版本,所以,大鸟准备把这个教程补齐,这篇文章就来说说基于宝塔面板docker安装MM-Wiki 。
1、特点
MM-Wiki主要特点如下:
- 部署方便,基于 golang 编写,只需要下载对于平台下二进制文件执行即可。
- 快速安装程序, 提供方便的安装界面程序,无需任何手动操作。
- 独立的空间,空间是一组文档的集合,一般为公司部门或者团队,空间下的文档相互独立。空间可根据需求设置空间访问级别。
- 支持 markdown 语法写作,支持附件上传。
- 完善的系统权限管理,系统可以自定义角色,并为不同角色授予不同的权限。
- 集成统一登录,本系统支持通过外部系统认证用户, 比如与公司的 LDAP 登录融合。具体请看登录认证功能。
- 邮件通知功能,当开启邮件通知,文档更改会通知所有关注该文档的用户。
- 文档具有分享和下载功能,目前只支持下载 MarkDown 源文件。
- 支持文档全文搜索
2、简介
演示:http://wiki.ctho.me
项目:https://github.com/phachon/mm-wiki
下载:https://github.com/phachon/mm-wiki/releases
docker:https://hub.docker.com/r/217heidai/mm-wiki
2、准备
- 宝塔面板最新版本(宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取https://www.bt.cn/?invite_code=MV9ub2NxdmI=)
- Docker管理器(软件商店→运行环境)
- nginx1.18(这个版本随意)
- 准备域名一个
- 宝塔新建网站
3、部署
因为是docker版本安装,所以整个过程还是很简单的,不过还是遇到了一点小问题,我们后面会说。
(1)Setup mysql
你可以用宝塔终端,也可以用xhell来连接服务器,进入命令模式。docker安装mysql的命令如下:
docker container run -d \ --restart=always \ --name wiki_mysql \ -v $HOME/mysql/etc/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf \ # mysql config file -v $HOME/mysql/data:/var/lib/mysql \ # mysql data -e MYSQL_ROOT_PASSWORD=mm_wiki \ # mysql root password -e MYSQL_USER=mm_wiki \ # mm-wiki user name -e MYSQL_PASSWORD=mm_wiki \ # mm-wiki user password -e MYSQL_DATABASE=mm_wiki \ # mm-wiki database name -d mysql:5.7 \ --character-set-server=utf8mb4 \ --collation-server=utf8mb4_unicode_ci
以上命令不能直接复制,你需要把后面的注释去掉。还要注意,修改默认的用户名密码等。大鸟这里头贴一个修改过的版本。如下:
docker container run -d \ --restart=always \ --name wiki_mysql \ -p 3306:3306 \ -v /opt/mysql/etc/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf \ -v /opt/mysql/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=mm_wiki \ -e MYSQL_USER=mm_wiki \ -e MYSQL_PASSWORD=mm_wiki \ -e MYSQL_DATABASE=mm_wiki \ -d mysql:5.7 \ --character-set-server=utf8mb4 \ --collation-server=utf8mb4_unicode_ci
注意:默认的3306端口可以修改为其他,不然会和你的宿主机端口有冲突。
(2)遇到问题
以上命令运行时会遇到如下错误:
docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "process_linux.go:449: container init caused \"rootfs_linux.go:58: mounting \\\"/opt/etc/mysqld.cnf\\\" to rootfs \\\"/var/lib/docker/overlay2/5a812cd97bf148325143905c4bb74cf074dbe5b85acae8c118154cac1fa78c40/merged\\\" at \\\"/var/lib/docker/overlay2/5a812cd97bf148325143905c4bb74cf074dbe5b85acae8c118154cac1fa78c40/merged/etc/mysql/mysql.conf.d/mysqld.cnf\\\" caused \\\"not a directory\\\"\"": unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type.
大致意思是您挂载的文件是个cnf目录文件而您挂载的目标文件是个cnf文件。所以我们需要根据自己的docker映射的路径在宿主机上把mysqld.cnf改为文件即可。
大鸟这里是映射在/opt/etc/mysqld.cnf,这里把mysqld.cnf改为文件即可,默认的是生成了mysqld.cnf目录,所以会发生错误。
(3)Setup mm-wiki
数据库安装好,现在开始安装mm-wiki,docker命令如下:
docker container run -d \ --restart=always \ --name wiki \ -p 8080:8080 \ -v $HOME/wiki/bin:/mm-wiki \ # mm-wiki -v $HOME/wiki/data:/data \ # mm-wiki data --link wiki_mysql:db \ # link mysql 217heidai/mm-wiki
注意:把后面的注释去掉。,修改过的命令如下:
docker container run -d \ --restart=always \ --name wiki \ -p 8080:8080 \ -v /opt/wiki/bin:/mm-wiki \ -v /opt/wiki/data:/data \ --link wiki_mysql:db \ 217heidai/mm-wiki
注意:端口可以任意修改。运行成功后,浏览器中<ip:8080>打开执行安装向导。
4、运行安装向导
<ip:8080>打开执行安装向导。如图:
(1)系统配置
(2)数据库配置
这里的用户名和密码就是刚刚你在docker安装数据库时创建的,如果不清楚请回看第三步。
注意:
- MYSQL Host:这里填写你服务器IP,不是127.0.0.1
- MYSQL端口:默认端口是3306,执行命令的时候可以修改为其他
(3)安装准备
(4)安装完成
(5)重启mm-wiki容器
可以在docker管理器中重启mm-wiki容器,也可以用命令形式。
docker restart 容器ID或容器名 :不管容器是否启动,直接重启容器 1. 首先 docker ps 查看正在运行的容器信息,显示2分钟前启动运行 2. docker restart 59eb 重启容器 3. 再次 docker ps 查看容器信息 显示 2秒前启动运行
这里为了教程的简单,推荐在docker管理器中执行重启的操作。如图:
点击绿色三角形,停止容器,然后再次点击,启动容器,重启过程完成。
5、效果展示
(1):浏览器中刷新你的<ip:8080>,效果如图:
(2):用刚才的设置的管理员账号和密码登录,登陆后效果如图:
6、设置域名
新建好网站,打开网站设置,具体如图:
7、如何升级
- 停止并删除您现有的mm-wiki容器。
- 设置新的mm-wiki容器。
- 重新启动新的mm-wiki容器。
8、最后
docker版本折腾起来容易点,但是只是安装教程,至于,如何使用自己折腾去吧。
1F
看一看学一学,离成功跟进一步
2F
感谢分享!感谢分享!
3F
感谢分享,试试看!
4F
学习一下,感谢分享!
5F
学习一下
6F
学习一下,感谢分享!
7F
感谢分享!感谢分享!
8F
谢谢分享
9F
自己按照docker说明部署,始终卡住,学习一下怎么解决的
10F
鸟大小石头
11F
看看是什么
12F
感谢分享
13F
刚好需要搭建,找了很多教程,这个挺详细的。
14F
看一看学一学,离成功跟进一步。分享!感谢分享!
15F
咋还有隐藏的,太搞笑了吧
16F
看一看学一学,
17F
谢谢楼主的分享,楼主辛苦了
18F
感谢分享!感谢分享!
19F
感谢分享
20F
学习一下