前言

本文介绍如何使用 Wiki.js 搭建知识库系统。

Wiki.js 官网

安装

前提准备

Wiki.js 几乎可以在任何支持 Node.js 的系统上运行。它可以运行在 Linux 、Windows、macOS等操作系统上,也可以运行在 Docker 、Kubernetes 等容器上。

  • CPU 推荐 2核或者更多

  • 内存 至少 1G

  • 存储 至少 1G

  • 数据库 推荐使用 PostgreSQL,MySQL/MariaDB/MS SQL Server/SQLite 也支持使用

Node 安装

Node.js 中文网

  1. 下载

    wget https://npmmirror.com/mirrors/node/v16.15.0/node-v16.15.0-linux-x64.tar.xz
  2. 解压

    tar -xf node-v16.15.0-linux-x64.tar.xz 
  3. 换名

    mv node-v16.15.0-linux-x64/ node
  4. 建立软连接

    ln -s /data/software/node/bin/node /usr/local/bin/

    也可以使用配置环境变量的方式

  5. 查看版本

     node -v

PostgreSQL 安装

PostgreSQL 官网

  1. 安装

    yum install postgresql-server
  2. 初始化数据库

    cd /usr/bin/
    ./postgresql-setup initdb
  3. 加入 systemctl 服务设置开机自启动

    systemctl enable postgresql.service
  4. 启动

    systemctl start postgresql.service
  5. 进入客户端命令

    sudo -u postgres plsql
  6. 修改密码

    ALTER USER postgres WITH PASSWORD 'postgres';
  7. 数据存储

    PostgreSQL 存储文件、配置文件默认在 /var/lib/pgsql/data/

  8. 开启远程访问权限

    编辑配置文件 postgresql.conf

    vim postgresql.conf 

    修改配置文件中的监听地址

    listen_addresses = '*'  

    在配置文件同级目录下有个文件 pg_hba.conf 最后面添加

    host     all             postgres        0.0.0.0/0               trust

    重启 postgresql 服务

    systemctl restart postgresql.service

    用 Navicat 成功连接

  9. 客户端操作命令

    进入客户端

    sudo -u postgres plsql

    查看数据库

    \l

    新建数据库

    create database wiki;

    退出客户端

    \q

Wiki.js 安装

  1. 下载

    wget https://github.com/Requarks/wiki/releases/latest/download/wiki-js.tar.gz
  2. 解压缩

    mkdir wiki
    tar xzf wiki-js.tar.gz -C ./wiki
    cd ./wiki
  3. 修改配置文件

    配置文件改名

    mv config.sample.yml config.yml

    配置数据库信息(注意:数据库要先创建)

    db:
    type: postgres

     # PostgreSQL / MySQL / MariaDB / MS SQL Server only:
    host: localhost
    port: 5432
    user: postgres
    pass: 123456
    db: wiki
    ssl: false
  4. 启动服务

    在 wiki 目录下

    node server
  5. 加入 systemctl 服务

    /etc/systemd/system/ 下新建 wiki.service 文件

    [Unit]
    Description=Wiki.js
    After=network.target

    [Service]
    Type=simple
    ExecStart=/usr/local/bin/node server
    Restart=always
    # Consider creating a dedicated user for Wiki.js here:
    User=nobody
    Environment=NODE_ENV=production
    WorkingDirectory=/data/software/wiki # 这个要指定你 wiki 的安装地址

    [Install]
    WantedBy=multi-user.target

    重新加载

    systemctl daemon-reload
  6. 设置开机自启动

    systemctl enable wiki
  7. 启动服务

    systemctl start wiki
  8. 查看服务状态

    systemctl status wiki

    如果没有启动成功,可通过如下命令查看日志信息

    journalctl -u wiki

使用

配置管理员

Wiki.js 服务成功启动后,访问 http://ip:3000,出现如下页面:

配置管理员邮箱地址,密码,网站地址,后进行安装,稍等一会,就会出现如下页面:

配置中文

Wiki.js 默认使用英语,可配置中文,方便操作。

  1. 首先选择 后台管理

  2. 安装中文简体

  3. 切换到中文简体

创建页面

  1. 选择 创建主页

  2. Wiki.js 支持多种方式的编辑器,可以自行选择,有的还未开放

  3. 效果展示

  4.  

基于 Wiki.js 搭建知识库系统的更多相关文章

  1. LIGHTX-CMS —— 基于 Node.js,Express.js 以及 SQLite 3 搭建的个人博客系统

    概述 LIGHTX-CMS 是我基于 Node.js,Express.js 以及 SQLite 3 搭建的个人博客发布系统. 项目本身可以拿来部署个人博客网站,同时我认为其也适合用以新手学习 Node ...

  2. 基于 Node.js 的服务器自动化部署搭建实录

    基于 Node.js 的服务器自动化部署搭建实录 在服务器上安装 Node.js 编写拉取仓库.重启服务器脚本 配置 Github 仓库的 Webhook 设置 配置 Node.js 脚本 其他问题 ...

  3. 基于 React.js + Redux + Bootstrap 的 Ruby China 示例 (转)

    一直学 REACT + METEOR 但路由部分有点问题,参考一下:基于 React.js + Redux + Bootstrap 的 Ruby China 示例 http://react-china ...

  4. 基于 Egg.js 框架的 Node.js 服务构建之用户管理设计

    前言 近来公司需要构建一套 EMM(Enterprise Mobility Management)的管理平台,就这种面向企业的应用管理本身需要考虑的需求是十分复杂的,技术层面管理端和服务端构建是架构核 ...

  5. Pomelo:网易开源基于 Node.js 的游戏服务端框架

    Pomelo:网易开源基于 Node.js 的游戏服务端框架 https://github.com/NetEase/pomelo/wiki/Home-in-Chinese

  6. 基于Node.js + jade + Mongoose 模仿gokk.tv

    原文摘自我的前端博客,欢迎大家来访问 http://www.hacke2.cn 关于gokk 大学的娱乐活动基本就是在寝室看电影了→_→,一般都会选择去goxiazai.cc上看,里面的资源多,质量高 ...

  7. 基于Node.js的强大爬虫 能直接发布抓取的文章哦

    基于Node.js的强大爬虫 能直接发布抓取的文章哦 基于Node.js的强大爬虫能直接发布抓取的文章哦!本爬虫源码基于WTFPL协议,感兴趣的小伙伴们可以参考一下 一.环境配置 1)搞一台服务器,什 ...

  8. node.js搭建Web服务器

    Node.js 博客搭建 一. 学习需求 Node 的安装运行 会安装node,搭建node环境 会运行node. 基础模块的使用 Buffer:二进制数据处理模块 Event:事件模块 fs:文件系 ...

  9. koa : Express出品的下一代基于Node.js的web框架

    https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/001434501579966a ...

  10. 使用 Node.js 搭建微服务网关

    目录 Node.js 是什么 安装 node.js Node.js 入门 Node.js 应用场景 npm 镜像 使用 Node.js 搭建微服务网关 什么是微服务架构 使用 Node.js 实现反向 ...

随机推荐

  1. MySQL之视图,索引,存储过程,触发器--实操

    一.视图 什么是视图? 视图是一个虚拟表,其内容由查询定义. 同真实的表一样,视图包含系列带有名称的列和行数据. 行和列数据来自定义视图的查询所引用的表,并且在引用视图时动态生成. 简单的来说视图是由 ...

  2. logging 模块因权限问题写入日志失败

    哈喽大家好,我是咸鱼 今天跟大家分享一个使用 Python 的 logging 模块写入日志文件时遇到的权限问题,不知道你们有没有遇到过 1.案例现象 今天上班的时候手机短信收到了 zabbix 告警 ...

  3. 《数据结构》之栈和堆结构及JVM简析

    导言: 在数据结构中,我们第一了解到了栈或堆栈,它的结构特点是什么呢?先进后出,它的特点有什么用呢?我们在哪里可以使用到栈结构,栈结构那么简单,使用这么久了为什么不用其它结构替代? 一.程序在内存中的 ...

  4. CKS 考试题整理 (10)-Dockerfile检测

    Task 分析和编辑给定的Dockerfile /cks/docker/Dockerfile(基于ubuntu:16.04 镜像), 并修复在文件中拥有的突出的安全/最佳实践问题的两个指令. 分析和编 ...

  5. .NET7 for LoongArch64(国产龙芯)

    目前龙芯通过自己的指令集LA64支持了.Net7.0.1版本,一同被支持的有Ruby,Nodejs,Java,Electron,Python等.原文:在此处 龙芯.Net7 sdk下载地址: http ...

  6. JavaScript高级学习

    JavaScript 进阶 学习作用域.变量提升.闭包等语言特征,加深对 JavaScript 的理解,掌握变量赋值.函数声明的简洁语法,降低代码的冗余度. 理解作用域对程序执行的影响 能够分析程序执 ...

  7. CodeTON Round 5 (Div. 1 + Div. 2, Rated, Prizes!) A-E

    比赛链接 A 代码 #include <bits/stdc++.h> using namespace std; using ll = long long; bool solve() { i ...

  8. 搭建Vue脚手架(vue-cli)

    windows下环境安装前置环境 node.js安装 https://nodejs.org/en/download/ 安装成功后打开cmd 输入如下,如果能看到node和npm的版本号了,说明已经安装 ...

  9. 基于 Surfel 的实时全局光照方案(Surfel-based Global Illumination)

    目录 Global Illumination based on Surfels [SIGGRAPH 2021] Surfel 持久化存储 surfel 数据组成 surfel 回收机制 Surfeli ...

  10. 一体化元数据管理平台——OpenMetadata入门宝典

    大家好,我是独孤风,一位曾经的港口煤炭工人,目前在某国企任大数据负责人,公众号大数据流动主理人.在最近的两年的时间里,因为公司的需求,还有大数据的发展趋势所在,我开始学习数据治理的相关知识.今天给大家 ...