Windows系统部署私有知识库wiki.js

注意:Windows下安装wsl会占用大量空间

引言

今天上网冲浪时,偶然发现了一篇有趣的帖子:

https://pipuwong.com/wikijs

受到启发,我决定深入探究并亲自尝试部署一个私有的知识库。鉴于原帖主的教程已经有段时间没有更新,我计划开帖撰写一篇全新的教程,以分享最新的部署步骤和经验。


什么是wiki

Wiki(发音为“维基”或“维客”)是一种可通过浏览器访问并由用户协同编辑其内容的网站。它允许一群用户使用简单的描述来创建和连接一组网页的社会计算系统。这个概念最早由沃德·坎宁安于1995年开发。

Wiki的特点包括:

  • 使用方便:用户可以通过普通的网页浏览器快速创建、更改网站各个页面的内容。
  • 协同编辑:多人可以共同编辑同一篇文章,无需额外的附加组件。

维基百科(Wikipedia) 就是一个典型的Wiki项目,由全球志愿者合作编撰而成,收录了超过5500万篇条目,是世界上规模最大且最流行的网络百科全书之一。"维基"一词源自夏威夷语的“wiki wiki”,意为“快速”,并成为了维基百科等项目的专用术语。


项目地址

简单上手

1 安装Docker Desktop

  • 下载
    点击下载

  • 安装
    按推荐安装即可,安装完成后点击按钮会自动重启,注意保存文件!!!

    重启后,打开程序,选择第一项 推荐安装

    可能遇到的问题

    问题一: 打开程序后一直转圈

    解决方法:

    • 启动终端管理员,敲击:
     ```
     netsh  winsock  reset
     wsl  --update
     ```
    
    • 在“设置”–“系统”–“可选功能”–“更多windows功能”里,勾选“windows虚拟机监控程序平台”、“适用于Linux的windows子系统”、“虚拟机平台”

2 配置docker-compose

  • 创建目录文件
    在本地创建一个名为 wiki 的新文件夹,在文件夹内新建一个名为docker-compose.yml的文件。

  • 编辑docker-compose.yml
    摘自官方文档,因为端口冲突,我将80端口改为8080,如果要修改用户名密码,注意两个服务都要改

    version:  "3"
    services:
      #  ...
    

3 启动

在顶部地址栏输入cmd后敲击Enter就可以在当前位置打开命令行窗口了

docker  compose  up  -d

4 配置

  • 设置用户
    打开浏览器,导航至此地址,完成用户设置

  • 设置语言
    设置好登录信息后,登录,点击Administration

    点击locale,选择 Chinese Simplified,点击右边的云朵下载,下载完成后点击site locale 选择中文,点击右上角绿色的Apply,语言就成功设置为中文了

  • 创建首页
    点击左上角花朵,再点击创建首页,挑选一个你习惯的编辑器,这里我选择的是Markdown

    在弹出的对话框设置好标题后点击OK确认,然后编辑你的首页即可,完成后点击右上角绿色的保存。


  • 新建页面
    wiki.js没有传统意义上的目录,页面的位置都是指定的,类似于相对目录的意思。如果你要新建一个页面,点击页面右上角带加号的图标新建页面,在弹出窗口的地址框输入页面的路径,首页路径为/home,所以这里我设置路径为/home/documents/ai

选择编辑器后,同样设置标题,然后点击OK确认,然后编辑你的页面即可,完成后点击右上角绿色的保存。


然后,你会发现目录树发生了变化,documents文件夹就已经放在/home目录下了,你可以点击这个文件夹,可以看见你刚才创建的文件。




通过以上操作不难发现,wiki.js的目录结构很特殊,如果需要的话,任意页面的位置可以任意改变,这倒是让我想起了notion。另外,wiki.js的每个目录都对应有一个页面,类似于介绍页,然后你指定路径的时候,很可能穿越了无数个父目录(当然这是类指),有的目录是没有页面的,这会造成潜在的问题,当然,也可能是我没操作对······


未完待续······

11 个赞

知识库类型软件 我调研过
喜欢 npm 生态的 选择面太广
讨厌 npm 生态的 又几乎没几个可选

贴一个docker-compose.yml

version: "3.3"
services:
  wikijs:
    image: lscr.io/linuxserver/wikijs
    container_name: wikijs
    environment:
      - DB_TYPE=mysql
      - DB_HOST=db
      - DB_PORT=3306
      - DB_USER=root
      - DB_PASS=root
      - DB_NAME=wikijs
      - TZ=Asia/Shanghai
    volumes:
      - ./conf:/config
      - ./data:/data
    ports:
      - 3245:3000
      
  db:
    image: mysql
    container_name: mysql-wikijs
    environment:
      - MYSQL_ROOT_PASSWORD=root
      - TZ=Asia/Shangha
    volumes:
      - ./db/data:/var/lib/data
      - ./db/logs:/var/log/mysql
      - ./db/conf/my.cnf:/etc/my.cnf
    ports:
      - 3309:3306
31 个赞

不错不错:+1:

可以可以

看起来不错,mark

很好很好

26 个赞

mark :+1:

1 个赞

用过一段时间,感觉不怎么好用

24/03/08 22:00 更新了wiki.js的安装以及创建页面,欢迎交流指正

3 个赞