文章背景图

Wiki.js 安装指南

2026-01-30
55
-
- 分钟
|

Wiki.js 是一款现代、轻量级的开源Wiki软件,基于Node.js构建,支持Markdown、可视化编辑和多人协作。它非常适合用作博客文档、知识库或团队手册。本教程将基于官方文档,详细介绍两种安装方式:本地开发环境(使用Docker Desktop)和服务器环境(在Ubuntu上)。无论你是初学者还是资深用户,都能跟着步骤顺利完成安装。

一、系统要求

在开始安装前,请确保你的系统满足以下最低要求。这些信息基于官方系统要求文档

  • CPU:至少1个核心,但推荐2核心或以上以提升性能(如页面渲染等任务)。

  • 内存(RAM):Linux系统至少1GB;Windows或macOS系统通常需要更多内存。Wiki.js本身占用约70MB,但处理任务时可能有短期峰值。

  • 存储空间:至少1GB专用空间。如果上传图片或文件,需根据内容规划存储。

  • 数据库:推荐使用PostgreSQL(9.5或更高版本),以获得最佳性能和兼容性。其他支持数据库包括MySQL、MariaDB等,但注意Wiki.js 3.x将仅支持PostgreSQL。

  • 网络访问:Wiki.js需要互联网连接以下载更新和资源(如语言包)。离线环境可通过侧载文件手动安装。

  • 域名:需要一个专用子域名或域名(如wiki.example.com),不能映射到子路径。

  • 浏览器:支持最新版本的Chrome、Firefox、Safari或Edge。IE11仅兼容阅读功能。

提示:如果你使用Docker安装,可跳过Node.js安装要求,因为Docker镜像已包含运行环境。

二、方式一:本地安装(使用Docker Desktop)

适用于macOS或Windows本地测试和开发。本部分基于Docker Desktop安装文档

步骤1:安装Docker Desktop

  1. 访问Docker Desktop官网,下载并安装适用于你操作系统的Docker Desktop。安装后启动Docker,确保服务运行正常(系统托盘会显示Docker图标)。

步骤2:创建项目文件夹和配置文件

  1. 在本地创建一个新文件夹,例如wiki

  2. 在该文件夹内,新建一个名为docker-compose.yaml的文件,并复制以下内容(此配置定义了PostgreSQL数据库和Wiki.js容器):

version: "3"
services:
  db:
    image: postgres:17-alpine
    environment:
      POSTGRES_DB: wiki
      POSTGRES_PASSWORD: wikijsrocks
      POSTGRES_USER: wikijs
    logging:
      driver: "none"
    restart: unless-stopped
    volumes:
      - db-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: wikijs
      DB_PASS: wikijsrocks
      DB_NAME: wiki
    restart: unless-stopped
    ports:
      - "80:3000"
volumes:
  db-data:

步骤3:启动Wiki.js

  1. 打开终端(macOS)或命令提示符(Windows)。在Windows上,可通过在文件夹地址栏输入cmd并回车,快速打开命令提示符。

  2. 使用cd命令导航到wiki文件夹,然后运行以下命令启动容器:

docker compose up -d

此命令会在后台拉取镜像并启动服务。等待几分钟直至容器初始化完成。

步骤4:完成安装

  1. 打开浏览器,访问http://localhost

  2. 首次访问会显示Wiki.js设置向导。输入管理员邮箱和密码,并设置Wiki的URL(本地测试可直接用http://localhost)。

  3. 点击“Install”完成安装。完成后会自动跳转到登录页面,使用刚设置的账号登录即可。

优点:本地安装简单快捷,适合开发和测试。如果后续想迁移到服务器,可导出数据备份。

三、方式二:服务器安装(在Ubuntu上)

适用于生产环境,如云服务器(DigitalOcean、AWS等)。本部分基于Ubuntu安装文档,以Ubuntu 20.04/22.04 LTS为例。

步骤1:更新系统并安装Docker

  1. 通过SSH连接到你的Ubuntu服务器。

  2. 运行以下命令更新系统包:

sudo apt -qqy update
sudo DEBIAN_FRONTEND=noninteractive apt-get -qqy -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' dist-upgrade
  1. 安装Docker及其依赖:

sudo apt -qqy -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' install ca-certificates curl gnupg lsb-release
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt -qqy update
sudo apt -qqy -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' install docker-ce docker-ce-cli containerd.io docker-compose-plugin

步骤2:设置Wiki.js容器和数据库

  1. 创建安装目录并生成数据库密钥:

sudo mkdir -p /etc/wiki
sudo openssl rand -base64 32 > /etc/wiki/.db-secret
  1. 创建Docker网络和数据卷:

sudo docker network create wikinet
sudo docker volume create pgdata
  1. 创建并启动容器(包括PostgreSQL、Wiki.js和更新伴侣):

sudo docker create --name=db -e POSTGRES_DB=wiki -e POSTGRES_USER=wiki -e POSTGRES_PASSWORD_FILE=/etc/wiki/.db-secret -v /etc/wiki/.db-secret:/etc/wiki/.db-secret:ro -v pgdata:/var/lib/postgresql/data --restart=unless-stopped -h db --network=wikinet postgres:17
sudo docker create --name=wiki -e DB_TYPE=postgres -e DB_HOST=db -e DB_PORT=5432 -e DB_PASS_FILE=/etc/wiki/.db-secret -v /etc/wiki/.db-secret:/etc/wiki/.db-secret:ro -e DB_USER=wiki -e DB_NAME=wiki -e UPGRADE_COMPANION=1 --restart=unless-stopped -h wiki --network=wikinet -p 80:3000 -p 443:3443 ghcr.io/requarks/wiki:2
sudo docker create --name=wiki-update-companion -v /var/run/docker.sock:/var/run/docker.sock:ro --restart=unless-stopped -h wiki-update-companion --network=wikinet ghcr.io/requarks/wiki-update-companion:latest
  1. 配置防火墙允许SSH、HTTP和HTTPS:

sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw --force enable
  1. 启动所有容器:

sudo docker start db
sudo docker start wiki
sudo docker start wiki-update-companion

步骤3:初始设置和访问

  1. 等待几分钟让容器初始化(首次启动可能较慢)。然后在浏览器中输入服务器的公网IP地址(如http://你的服务器IP)。

  2. 如果页面无法加载,等待5分钟后重试。出现设置向导后,输入管理员账号信息并设置Wiki URL(推荐使用域名,如http://wiki.example.com)。

  3. 完成安装后,即可登录使用。

可选步骤:启用HTTPS(Let's Encrypt)

如果你有域名,建议启用HTTPS以提升安全性:

  1. 在域名注册商处添加A记录,将域名(如wiki.example.com)指向服务器IP。

  2. 通过SSH连接到服务器,停止并移除现有Wiki容器(数据不会丢失):

sudo docker stop wiki
sudo docker rm wiki
  1. 重新创建容器(替换wiki.example.comadmin@example.com为你的域名和邮箱):

sudo docker create --name=wiki -e LETSENCRYPT_DOMAIN=wiki.example.com -e LETSENCRYPT_EMAIL=admin@example.com -e SSL_ACTIVE=1 -e DB_TYPE=postgres -e DB_HOST=db -e DB_PORT=5432 -e DB_PASS_FILE=/etc/wiki/.db-secret -v /etc/wiki/.db-secret:/etc/wiki/.db-secret:ro -e DB_USER=wiki -e DB_NAME=wiki -e UPGRADE_COMPANION=1 --restart=unless-stopped -h wiki --network=wikinet -p 80:3000 -p 443:3443 ghcr.io/requarks/wiki:2
  1. 启动容器并查看日志,等待HT证书签发完成:

sudo docker start wiki
sudo docker logs wiki  # 查看日志,直到出现"HTTPS Server: [RUNNING]"
  1. 访问https://你的域名即可使用HTTPS。还可在Wiki.js管理后台(Administration Area > SSL)启用HTTP到HTTPS的重定向。

四、后续管理

  • 升级:Wiki.js内置更新伴侣(Update Companion)。有新版本时,在管理后台的“System Info”点击“Perform Upgrade”即可自动升级。

  • 备份:定期备份数据库卷(如Ubuntu中的pgdata)和Wiki.js数据。

  • 故障排除:如果遇到问题,可查看容器日志(如docker logs wiki)或参考官方文档

总结

本教程覆盖了Wiki.js的两种主流安装方式,读者可根据需求选择。本地安装适合快速上手,服务器安装则用于生产环境。Wiki.js功能强大且易于维护,是构建知识库的理想选择。如果你有疑问,欢迎在评论区留言!


本教程内容均基于官方文档,确保准确性。如有特定环境问题,建议查阅Wiki.js官方文档获取最新信息。希望这篇教程能帮助你顺利部署Wiki.js!

评论交流

文章目录