前言

本文介绍如何使用 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. 明解STM32—GPIO应用设计篇之IO外部中断EXTI原理及使用方法

    ​一.前言 在之前针对STM32的GPIO相关API函数及配置使用进行了详细的介绍,GPIO作为输入引脚时,调用相关读信号引脚函数接口就可以在程序的循环中,轮询的对输入信号进行读取检测操作,除了轮询的 ...

  2. 对象存储?CRUD Boy实现对文件的增删改查

    大家好!我是sum墨,一个一线的底层码农,平时喜欢研究和思考一些技术相关的问题并整理成文,限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教. 以下是正文! 对象存储是什么? 对象存储是一种数据 ...

  3. GO web学习(二)

    跟着b站https://space.bilibili.com/361469957 杨旭老师学习做的笔记 Response响应 ResponseWriter 包括Writer,WriterHeader, ...

  4. VSCode 编辑器的基本配置

    VSCode 编辑器的基本配置 在正式开始本文的内容之前,请允许我先做一些自我介绍: 严格来说,我是个自由职业者,经常会参与一些计算机专著的写作与翻译工作(主要作品如下图所示),业余偶尔也会有一些机会 ...

  5. 基于thumbnailator封装图片处理工具类,实现图片的裁剪、压缩、图片水印、文字水印、多行文字水印等功能

    目录 一.前言 二.工具类的依赖和简单介绍 1.添加依赖 2.简单的使用 3.加载需要处理的图片 4.添加图片处理规则 4.1 Builder的方式 4.2 使用规则工厂的方式 5.输出处理后的图片 ...

  6. 如何使用C#中的Lambda表达式操作Redis Hash结构,简化缓存中对象属性的读写操作

    Redis是一个开源的.高性能的.基于内存的键值数据库,它支持多种数据结构,如字符串.列表.集合.散列.有序集合等.其中,Redis的散列(Hash)结构是一个常用的结构,今天跟大家分享一个我的日常操 ...

  7. [Spring+SpringMVC+Mybatis]框架学习笔记(八):Mybatis概述

    第8章 Mybatis概述 8.1 几个概念 ORM Object-Relationship Mapping 对象关系映射,它是一种思想,它的实质是将数据库中的数据用对象的形式表现出来. JPA Ja ...

  8. PE文件整体结构解析

    DOS头 在之前,我们已经了解过PE文件的整体结构了,并且我们进行了静动态差异的文件分析,其开头部分就是DOS 部分,包含了DOS MZ文件头和DOS块,那么我们来了解一些DOS部分的结构和其相关意义 ...

  9. OlllyDbg调试器和IDA调试器

    OllyDbg调试器 OllyDbg称为Ring3级的首选工具.可以识别数千个被和Windows频繁使用的函数,并能将其注释出来.它会自动分析函数过程.循环语句等 OllyDbg主界面 快捷键 Add ...

  10. Blazor 跨平台的、共享一套UI的天气预报 Demo

    1. 前言 很久之前就读过 dotnet9 大佬的一篇文章,MAUI与Blazor共享一套UI,媲美Flutter,实现Windows.macOS.Android.iOS.Web通用UI,没读过的可以 ...