前提条件:
- 一台Linux系统
首先安装Docker (已经安装过得可以跳过)
可以参照Docker官网选择不同的系统按照步骤进行安装:centos按照docker的链接
安装MongoDB
不使用Docker进行安装可以参考官网的安装教程Linux安装MongoDB步骤
- 使用Docker安装
# 拉取Mongo最新的镜像
docker pull mongo
# 根据mongo镜像启动一个Mongo容器
docker run -p 27017:27017 -v $PWD/db:/data/db -d mongo
# -p 27017:27017表示映射宿主机的27017端口到容器的27017端口
# -v $PWD/db:/data/db表示映射当前目录晓得/db到容器的/dada/db目录
# -d 表示后台静默启动
- 需要创建一个数据库来为wiki使用,这里可以使用MongoDB官方的工具mongodb-compass在GUI页面进行创建
使用Docker安装wiki.js
可以参考wiki.js官网给出的步骤进行安装 wiki.js 官网安装步骤
总结下来就是:
- 使用docker拉去镜像
sudo docker pull requarks/wiki
编写配置文件覆盖容器的配置文件 (可以参考官网给出的例子 wiki.js 配官网给出的配置文件示例)
- 根据自己的配置修改主机地址
# 修改host为你主机的地址
host: http://localhost
- 修改显示的语言,en - 英文 zh - 中文
# 修改wiki.js显示的语言 zh - 中文
lang: zh
- 修改是否允许游客访问即不需要登录即可访问
# 是否允许游客范围, 不允许就是false
public: false
- 配置MongoDB的链接地址和数据库(如wiki)
# 配置MongoDB的链接地址, 下面是MongoDB不设置用户密码配置的情况, 然后需要制定一个可以使用的数据库,如wiki
db: mongodb://localhost:27017/wiki
# 如果MongoDB设置了用户密码需要修改下配置(如果用户密码包含特殊字符需要自己先进行URLEncoder转码)
db: mongodb://username:password@localhost:27017/wiki
- 配置git仓库用于保存书写的文档
使用http方式:
# 需要修改url为git的http链接
url: https://github.com/Organization/Repo
# 需要指定auth的类型为http
type: http
# 需要指定通过http访问的用户名和密码
username: marty
password: MartyMcFly88
使用ssh方式:
# 需要修改url为git的ssh链接
url: git@github.com:zhangsan/Organization/Repo
# 需要指定auth的类型为ssh
type: ssh
# 需要准备一个私钥来访问上面指定的repo
privateKey: /etc/wiki/keys/git.pem
使用Docker启动
- 如果git的auth验证使用了ssh方式,则需要映射私钥文件到容器目录即使用
# 需要映射修改的配置文件目录
-v /root/wiki-config.yml:/var/wiki/config.yml
# ssh方式需要映射私钥文件
-v /root/git.pem:/etc/wiki/keys/git.pem requarks/wiki
# WIKI_ADMIN_EMAIL参数是容器提供的管理员邮箱的参数
# 完整的docker启动wiki.js命令
sudo docker run -d -p 80:80 -e "WIKI_ADMIN_EMAIL=username@qq.com" -v /root/wiki-config.yml:/var/wiki/config.yml -v /root/git.pem:/etc/wiki/keys/git.pem requarks/wiki
- 如果git的auth验证使用了http方式,则只需要映射配置文件即可
# 需要映射修改的配置文件目录
-v /root/wiki-config.yml:/var/wiki/config.yml
# WIKI_ADMIN_EMAIL参数是容器提供的管理员邮箱的参数
# 完整的docker启动wiki.js命令
sudo docker run -d -p 80:80 -e "WIKI_ADMIN_EMAIL=username@qq.com" -v /root/wiki-config.yml:/var/wiki/config.yml