Docker系列 基于wiki.js搭建个人知识库

一、介绍

wiki.js是基于NodeJS构建的轻量级wiki应用程序。可以搭建项目使用指南或者自己的知识库等。

二、部署

这里使用docker-compose方式部署。官方部署文档:https://docs.requarks.io/install/docker

docker compose 配置文件如下:

version: "3"
services:

  db:
    image: postgres:15-alpine
    container_name: wikijs
    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: requarks/wiki:2.5.301
    container_name: wikijs_db
    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:
      - "3080:3000"

volumes:
  db-data:

networks:
  default:
    external: true
    name: NPM

说明: 配置与官方推荐的基本相同,只需要少数改动。

  • 官方发布docker镜像可以选择GitHub Packagges(ghcr.io/requarks/wiki)和Docker Hub(requarks/wiki),实测Docker Hub的下载速度较快,所以这里选择了Docker Hub的镜像。
  • 镜像版本根据实际需要修改,尽量指定版本, 不要使用latest。这里选择了当前最新的稳定版本2.5.301。

fd823f83b59f6bed57bf04db1544f112.png

  • 端口号根据实际情况修改即可。
  • 当前配置会创建一个“[容器名]-db-data”的docker卷,数据会存储在这个卷中。后续数据备份和恢复均依赖该docker卷。该docker卷会在首次创建容器时同时创建。 5c435ec7d930a25b3347336f7981e477.png

三、使用

1、首次登录

输入指令docker-compose up -d启动容器,网页登录http://[ip]:[端口号]进入服务,首次登录会进入安装界面: b864fb307abb2ee72e28a8100d260e62.png

填写完邮箱、密码、URL后,点击“INSTALL”,等待显示“Installation complete!”即表示安装完成。 c99a76cb1725765288e62beb16c174be.png

2、设置中文

系统默认为英文,需要自己下载中文语言包并切换。

(1)使用邮箱和密码登录管理界面 61bf10232bdd95c26a1c84e022494297.png

(2)在管理界面中点击“Locale”标签,在“Download Locale”下找到“Chinese Simplified”,点击下载安装中文语言包; 然后在“Locale Settings”下选择“Chinese Simplified”,在点击“APPLY”即可切换中文。 f833028b1e6606880e2cafa76564d284.png

3、站点信息设置

站点信息在“常规”标签中设置,包含网站网址、网站名称、LOGO、页脚版权说明等 1622cf2e773e62a2de3845d0e7811365.png

4、开启HTTPS

官方设置较为麻烦,需要修改容器配置选项。这里推荐使用nginx-proxy-manager进行反向代理。 6c3103c27e68e529ee4e97aedcc3d555.png

5、设置备案信息

如果服务器在中国境内,需要在网页上悬挂ICP备案信息。需要通过代码注入的方式设置。 在“主题”标签的“代码注入”中,最下面一个编辑框填写相关代码。 813556960442b389c4d5ec08410fad24.png

例如:

<div style="text-align:end">
    <a href="https://beian.miit.gov.cn/" class="imprint" rel="external nofollow" target="_blank">
        待备案
    </a>
</div>

展示效果如下: 44cc23a3041e4c3b796df1cfa3031c83.png

四、相关资料

官网网站:https://js.wiki/

部署文档:https://docs.requarks.io/

docker部署文档:https://docs.requarks.io/install/docker

github仓:https://github.com/requarks/wiki

消息盒子

# 暂无消息 #

只显示最新10条未读和已读信息