【实用的开源项目】使用服务器部署Wiki.js,一个美观且强大的开源Wiki程序

本文阅读 16 分钟

1. 前言

上个月小俊介绍了一款支持跨平台、跨终端的在线文档、知识库管理程序: MrDoc觅思文档 ,后来又在寻找有没有其他的程序,这不,美观且强大的开源Wiki程序: Wiki.js ,简单使用之后,感觉还不错,也推荐给大家,现在就教大家如何部署这款程序。

1.1 官方网站

官方网站: https://js.wiki
官方Github: https://github.com/requarks/wiki

2. Wiki.js 简介

The most powerful and extensible open source Wiki software
Make documentation a joy to write using Wiki.js's beautiful and intuitive interface!
最强大、最可扩展的开源 Wiki 软件
使用Wiki.js美观直观的界面编写文档成为一种乐趣!

3. 准备工作

  1. 【必需】一台服务器(推荐 腾讯云轻量应用服务器 HK 或境内,其他服务器(如 CloudConeRackNerd 、家里云或者各家企业的私有云亦可
  2. 【建议】操作系统: Debian 10 ,腾讯云轻量应用服务器推荐 Ubuntu20.04-Docker20
  3. 【建议且必需】域名一枚,并解析到服务器上
  4. 【可选建议使用反向代理本教程选用NPM】安装好Nginx Proxy Manager( 相关教程

注意

[quote color="danger"]这是一篇全新安装教程,若你的服务器已有环境或者已有数据请谨慎重装系统!!!可直接跳至
6.2 环境准备(其他服务器) 继续阅读。
这是一篇全新安装教程,若你的服务器已有环境或者已有数据请谨慎重装系统!!!可直接跳至
6.2 环境准备(其他服务器) 继续阅读。
这是一篇全新安装教程,若你的服务器已有环境或者已有数据请谨慎重装系统!!!可直接跳至 6.2 环境准备(其他服务器) 继续阅读。
[/quote]

本文软件基于腾讯云轻量应用服务器安装,无建议配置,教程使用的腾讯云轻量应用服务器系统为 Ubuntu Server 20.04 LTS 64bit !理论上腾讯云轻量应用服务器为 Ubuntu20.04-Docker20 的服务器操作应与本文基本一致(包括过程与报错),其他系统为 Debian 或者 Ubuntu 的服务器应与本文大同小异!
腾讯云轻量应用服务器购买地址: https://curl.qcloud.com/XqKjWCYA
腾讯云上云精选: https://curl.qcloud.com/ujD237Hl
腾讯云云产品特惠专区: https://curl.qcloud.com/TPJfrddE

4. 视频教程

5. 界面演示

5.1 安装页

Wiki.js-安装页.png

5.2 登录页

Wiki.js-登录页.png

5.3 欢迎页

Wiki.js-欢迎页.png

5.4 管理面板配置板页

Wiki.js-管理面板配置板页.png

5.5 搜索页

Wiki.js-搜索页.png

5.6 wiki页

Wiki.js-wiki页.png

5.7 自带可视化编辑器的图片上传页

Wiki.js-自带可视化编辑器的图片上传页.png

5.8 个人信息页

Wiki.js-个人信息页.png

6. 部署 Wiki.js

6.1 环境准备(腾讯云轻量应用服务器)

该步骤特别为使用腾讯云轻量应用服务器的用户准备,若你不是用腾讯云轻量应用服务器部署该程序,可以直接转到 6.2 环境准备(其他服务器) 继续阅读。

6.1.1 重装系统

[quote color="danger"]此操作前请确保服务器上无重要程序、文件!!!请确保服务器上的数据已经备份好!!!
此操作前请确保服务器上无重要程序、文件!!!请确保服务器上的数据已经备份好!!!
此操作前请确保服务器上无重要程序、文件!!!请确保服务器上的数据已经备份好!!!
[/quote]

进入腾讯云轻量应用服务器的控制台,进入 重装系统 界面,然后选择 使用容器镜像 ,列表中选择 Ubuntu20.04-Docker20请确保服务器上无重要程序、文件!!!请确保服务器上的数据已经备份好!!! 然后点击勾选 确认已了解以上内容,我确定已备份完成 ,而后点击确定即可完成系统重装。

部署Wiki.js-重装系统.png

部署Wiki.js-重装系统-2.png

腾讯云轻量应用服务器这边我们直接选择 Docker 容器镜像,就可以跳过安装 Dockerdocker-compose的步骤(如果你使用的是境内服务器,腾讯云的 Docker 容器镜像已经配置好了国内镜像源,可以加速访问 Docker 镜像资源)。由于腾讯云的 Docker 容器镜像中的 Docker 已经安装了 docker-compose 。所以下文中若你见到 docker compose 命令,请你使用使用 docker-compose 命令!

6.1.2 登录服务器

OrcaTerm (原名 WebShell )是腾讯遨驰云原生操作系统中 CVMLighthouse 、裸金属等产品的统一网页终端,帮助用户随时随地通过浏览器远程登录服务器管理业务,相比本地远程终端更轻量便捷,无需掌握 SSHFTP 也可轻松操作。
进入腾讯云轻量应用服务器的控制台,点击右上方的 登录 ,使用腾讯云正在公测的 OrcaTerm 登录到服务器。
使用服务器部署Wiki.js-登录服务器.png
然后点击登录,即可登录到服务器中
部署Wiki.js-登录服务器-2.png

输入下面这句命令登录到 root 账号

sudo -i

使用服务器部署Wiki.js-登录到root.png

6.1.3 安装 Nginx Proxy Manager(可选建议使用反向代理本教程选用NPM)

安装 Nginx Proxy Manager 的详细教程小俊之前也写过哦,也配有详细的视频版本,需要学习的朋友可以点击这篇文章学习👉👉👉链接:【教程】使用腾讯云轻量应用服务器搭建Nginx Proxy Manager,优美简单地解决反向代理!https://www.smalljun.com/archives/3113.html ,当然想要使用反向代理的小伙伴要是熟悉 Nginx ,也可以自己手搓 Nginx 进行反向代理哦!你想用宝塔面板的话,也是没有问题哒!

6.2 环境准备(其他服务器)

该步骤为各种服务器的环境准备通法,若你使用腾讯云轻量应用服务器部署该程序并已经仔细阅读 6.1 环境准备(腾讯云轻量应用服务器) 并按步骤完成操作,可以跳过该步骤,直接转到 6.3 部署 Wiki.js 继续阅读。

6.2.1 更新 Packages 并安装必要软件包

执行以下命令,更新 Packages 并安装必要软件包

apt -y update
apt -y install curl

部署Wiki.js - 更新 Packages 并安装必要软件包.png

6.2.2 安装并启动 Docker

6.2.2.1 境外服务器安装 Docker

执行以下命令,境外服务器安装 Docker

curl -fsSL https://get.docker.com | bash -s docker

6.2.2.2 境内服务器安装 Docker

执行以下命令,境内服务器使用阿里云镜像源安装 Docker

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

执行以下命令,境内服务器使用国内 daocloud 一键安装命令安装 Docker

curl -sSL https://get.daocloud.io/docker | sh

6.2.2.3 启动 Docker

输入并执行以下命令,启动 Docker

systemctl start docker

再执行以下命令,查看 Docker 的运行状态

systemctl status docker

最后执行以下命令,设置 Docker 开机自启动

systemctl enable docker

部署Wiki.js - 启动 Docker.png
由于我们通过以上一键脚本安装的 Docker 为最新版本,新版本的 Docker 自带 compose 这个子命令,所以我们无需额外安装 docker-compose 。下文中若你见到 docker-compose 命令,请你使用使用 docker compose 命令!
使用方面仅有一个 - (dash)字符只差,新版使用 docker compose 命令,而如果你是旧版本就使用 docker-compose 命令。

6.2.3 安装 Nginx Proxy Manager(必需反向代理本教程选用NPM)

安装 Nginx Proxy Manager 的详细教程小俊之前也写过哦,也配有详细的视频版本,需要学习的朋友可以点击这篇文章学习👉👉👉链接:【教程】使用腾讯云轻量应用服务器搭建Nginx Proxy Manager,优美简单地解决反向代理!https://www.smalljun.com/archives/3113.html ,当然想要使用反向代理的小伙伴要是熟悉 Nginx ,也可以自己安装 Nginx 进行反向代理哦!你想用宝塔面板的话,也是没有问题哒!

6.3 部署 Wiki.js

6.3.1 新建目录

执行以下命令,新建目录

mkdir -p /opt/docker/wikijs && cd /opt/docker/wikijs && mkdir -p /opt/docker/docker_data/postgresql/data

部署Wiki.js-新建目录.png

6.3.2 新建docker-compose.yaml文件并编辑

执行以下命令,新建 docker-compose.yaml 文件并编辑

nano docker-compose.yaml

然后输入以下配置内容,然后 Ctrl X + y +回车 退出并保存即可。

---
version: "3"
services:
  db:
    image: postgres:11-alpine
    environment:
      POSTGRES_DB: smalljunwikijs
      #设置一个自定义的数据库名以替换 smalljunwikijs 需与下方的 DB_NAME 一致!
      POSTGRES_PASSWORD: wikijssmalljunpw
      #设置一个自定义的数据库密码以替换 wikijssmalljunpw 需与下方的 DB_PASS 一致!
      POSTGRES_USER: smalljunwiki
      #设置一个自定义的数据库用户名以替换 smalljunwiki 需与下方的 DB_USER 一致!
    logging:
      driver: none
    restart: unless-stopped
    volumes:
      - /opt/docker/docker_data/postgresql/data:/var/lib/postgresql/data
  wiki:
    image: ghcr.io/requarks/wiki:2
    depends_on:
      - db
    environment:
      DB_TYPE: postgres
      DB_HOST: db
      DB_PORT: 5432
      DB_USER: smalljunwiki
      DB_PASS: wikijssmalljunpw
      DB_NAME: smalljunwikijs
    restart: unless-stopped
    ports:
      - 2078:3000

如下图所示

部署Wiki.js-新建docker-compose.yaml文件.png

注意

  1. docker-compose.yaml 文件中 2078 为暴露端口,如被占用,请自行更改替换,需要在云服务器的控制台防火墙开放相应端口!

6.3.3 启动容器

输入执行以下命令后台启动容器

docker compose up -d #新版本Docker使用该命令
docker-compose up -d #旧版本Docker使用该命令,例:上面提到的腾讯云轻量应用服务器的Docker镜像中自带的Docker-compose

如下图所示

部署Wiki.js-启动容器.png

启动完后再输入执行以下命令确认所有容器都是 runningup 状态

docker compose ps #新版本Docker使用该命令
docker-compose ps #旧版本Docker使用该命令,例:上面提到的腾讯云轻量应用服务器的Docker镜像中自带的Docker-compose

如下图所示

部署Wiki.js-检查容器状态.png

至此,我们已经安装完成 Wiki.js ,若你无域名或者不想给程序使用域名,浏览器访问服务器 IP:2078 即可访问!

6.4 配置反向代理

先把域名解析到服务器(如果有小白不会解析可以进入 小俊博客的QQ群:199175766 询问,群主就是小俊,一般周末在线,后面考虑写一篇域名解析教程!进入 Nginx Proxy Manager ,点击 Hosts ,然后点击 Add Proxy Host,按下图进行配置,下图中的 172.17.0.1 可能有所不一,请执行 ip addr 自行查找 docker0 网卡的内网IP!

Domain Names:填写你想用在该程序的域名
Scheme:默认http #一般不用改
Forward Hostname / IP:172.17.0.1 #一般为 `172.17.0.1` ,可能有所不一,请执行 `ip addr` 自行查找 `docker0` 网卡的内网IP!
Forward Port:2078 #暴露端口(若跟着本文未修改 `yaml` 文件中的暴露端口。应为 `2078` )

如下图所示

部署Wiki.js-配置反向代理.png

先不要着急着点 Save ,大家先去 DNS 提供商解析域名哦!然后我们可以为程序添加上 SSL 证书,给他加上一道小绿锁,不过如果你点了也没关系,没点 Save 的朋友点击 SSL ,然后点击 Request a new SSL Certificate ,然后把 Force SSLHTTP/2 Support 打开,修改一下 Email Address for Let's Encrypt 的邮箱,然后 Save 即可;点击了 Save 的朋友,点击右边的三点,点击 Edit ,重复上述步骤即可!

如下图所示

部署Wiki.js-开启HTTPS.png

至此,我们已经部署完成 Wiki.js 这一个美观且强大的开源Wiki程序了。浏览器访问您刚刚设置的域名即可访问!
注意

  1. 需要在服务器的后台防火墙开放相应端口!需要开放 80 tcp443 tcp81 tcp 哦,如果你不使用域名访问程序,则只需要开放 2078 tcp

7. 简单使用教程

7.1 初始化 Wiki.js

浏览器访问 Wiki.js 的地址,进入程序,按页面提示输入管理员邮箱、密码、重复密码以及程序URL,然后点击 INSTALL 执行安装。

部署Wiki.js-初始化.png

等待安装完成即可

部署Wiki.js-初始化完成.png

7.2 本地化程序

Wiki.js 可以用多种语言显示,并提供同一页面的多语言版本。
使用你设置的账号密码登录进入 Wiki.js ,在欢迎页面点击 Administration 进入管理面板
部署Wiki.js-进入管理面板.png

在左侧边栏找到 Locale ,点击进入

部署Wiki.js-本地化-设置语言.png

在页面右侧选择你需要的语言,下载即可,下图中小俊下载了简中

部署Wiki.js-本地化-设置语言-2.png

语言下载安装完成
部署Wiki.js-本地化-设置语言-3.png

在页面左侧设置语言,点击 Apply 应用即可!

部署Wiki.js-本地化-设置语言-4.png

7.3 创建首页

退出管理面板,在欢迎页面点击 创建首页
部署Wiki.js-创建首页.png

然后选择你个人喜欢的编辑器,基础同学建议选择 Visual Editor Rich-text WYSIWYG (就是可视化编辑器,所见即所得)
部署Wiki.js-选择编辑器.png

然后自定义一下页面属性
部署Wiki.js-自定义页面属性.png

然后就可以开写了,自带的可视化编辑器的功能还是挺丰富的,大家自己探索一下叭,下图我探索一部分功能
部署Wiki.js-可视化编辑器.png

8. 目前遇到的问题

8.1 境内服务器难以安装 Docker

建议直接执行以下命令,安装 Docker

apt install docker.io

然后,参考小俊之前写过的👉👉👉【教程】CentOS系统Docker的详细安装教程https://www.smalljun.com/archives/3174.html ,安装 Docker-compose ,然后再进行 第6.2步及其后续操作

9. Issues

有问题可以去 GithubIssues,也可以在评论区互相交流探讨哦!

10. 总结

Wiki.js 是美观且强大的开源Wiki程序,各方面都还可以,功能也比较完善,本地化做的也不错。大家如果发现它的特点功能也可以在评论区讨论,还有什么类似的程序大家也可以评论分享一下!

原创文章,作者:小俊,如若转载,请注明出处:https://www.smalljun.com/archives/3478.html
【实用的开源项目】使用服务器部署MrDoc,一个支持跨平台、跨终端的在线文档、知识库管理程序
« 上一篇 06-09
【实用的开源项目】使用服务器部署Immich,高颜值高性能的自托管照片和视频备份方案
下一篇 » 07-21

发表评论

发表评论

热门文章

标签TAG

热评文章