评论系统 Waline 自部署

总结摘要
Waline 是一款简洁、安全的评论系统。一款从 Valine 衍生的带后端评论系统。

前言

Waline 是一款简洁、安全的评论系统。一款从 Valine 衍生的带后端评论系统。可以将 Waline 等价成 With backend Valine 。

特性:

  • 快速
  • 真·安全
  • Markdown 语法支持
  • 轻量易用
  • 免费部署
  • 多种部署部署方式和存储服务支持,每列选择一项多达 243 种部署方式任君选择

详见:

Waline 官网: https://waline.js.org/  

Waline Github: https://github.com/walinejs/waline  

docker 部署

我选择的是使用 SQLite 。

新建 docker-compose.yml 文件:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
version: '3'

services:
  waline:
    container_name: waline-weryiwarorg
    image: lizheming/waline:latest
    restart: always
    ports:
      - 58360:8360
    volumes:
      - ./data:/app/data
    environment:
      TZ: 'Asia/Shanghai'
      SQLITE_PATH: '/app/data'
      JWT_TOKEN: 'TwwwwwwsWaline'
      SITE_NAME: '往日微忆'
      SITE_URL: 'https://wer.yiwan.org'
      SECURE_DOMAINS: 'wer.yiwan.org,cww.yiwan.org'
      AUTHOR_EMAIL: '[email protected]'

上面SECURE_DOMAINS 是配置安全域名,需要同时添加网站地址(wer.yiwan.org)和 Waline 服务端地址(cww.yiwan.org),不包含传输协议,即 http://https://。 如没正确填写,会出现 ForbiddenError 错误。 

另外还需要下载 waline.sqlite 文件至上述的数据目录(即./data),要下载 RAW 文件,这个文件提供数据表结构。否则会出现 

Error: SQLITE_ERROR: no such table: wl_Users

这些准备工作做好后,直接docker compose up -d即部署成功。

在网站前端设置好嵌入代码,即可使用。

后台管理

浏览器打开 https://cww.yiwan.org ,点击用户注册, 输入你的个人信息注册即可。首个注册的人会被设定成管理员。

浏览器打开 https://cww.yiwan.org/ui 即可进入后台。个人感觉 Waline 的后台比较简捷,甚至说是简单。

数据迁移

disqus下载打包的评论数据,格式为.xml.gz,不能直接使用。需要解压出为xml文件,打开复制里面的文件内容到   https://waline.js.org/migration/tool.html 数据迁移助手:

点转换后,会生成下载为一 output.csv 文件。

用数据库工具,如 DataGrip、 Navicat 、SQLiteStudio(免费)、DB Browser for SQLite(免费)、DbGate(免费)、Antares SQL(免费)等,打开部署时下载的 waline.sqlite文件, 使用工具的导入功能导入output.csv 文件数据。

我用 DataGrip 导入时,它会自动匹配好字段,对应导入即可。

参考致谢