本文最后更新于 2023-10-24,文章最后在90天前更新,内容可能已经过时。

前言

官方文档 https://waline.js.org/guide/get-started/

本教程为使用Docker Compose+sqlite部署

有能力尽量为域名配置SSL证书,以防某些场景需要

Docker安装

根据文档进行安装

官方文档1 https://docs.docker.com/engine/install/

官方文档2 https://docs.docker.com/compose/install/

Dokcer-Compose部署

新建docker-compose.yml模板

官方环境变量文档 https://waline.js.org/reference/server/env.html

官方文档给出的模板如下:

# docker-compose.yml
version: '3'

services:
  waline:
    container_name: waline
    image: lizheming/waline:latest
    restart: always
    ports:
      - 127.0.0.1:8360:8360 # 去除此处的"127.0.0.1:"
    volumes:
      - ${PWD}/data:/app/data
    environment:
      TZ: 'Asia/Shanghai'
      SQLITE_PATH: '/app/data'
      JWT_TOKEN: 'Your token'
      SITE_NAME: 'Your site name'
      SITE_URL: 'https://example.com'
      SECURE_DOMAINS: 'example.com'
      AUTHOR_EMAIL: 'mail@example.com'

个人推荐模板如下:

# docker-compose.yml
version: '3'

services:
  waline:
    container_name: waline
    image: lizheming/waline:latest
    restart: always
    ports:
      - 8360:8360
    volumes:
      - ${PWD}/data:/app/data # 存储卷,可自行替换目录
    environment:
      TZ: 'Asia/Shanghai' # 时区

      # SQLITE数据库配置
      SQLITE_PATH: '/app/data'
      JWT_TOKEN: '12345' # 数据库Token,任意组合

      # 站点基础配置
      SITE_NAME: 'Steven的博客' # 站点名字
      SITE_URL: 'https://blog.stevenw.cc/' # 站点链接
      SECURE_DOMAINS: 'blog.stevenw.cc' # 安全域名

      # 站长邮箱
      AUTHOR_EMAIL: 'xxx@qq.com' # 站长邮箱

      # STMP服务配置
      SMTP_SERVICE: '163' # SMTP服务(所有支持邮箱请查看文档)
      SMTP_USER: 'xxx@163.com' # 发件邮箱(例如12345@qq.com等)
      SMTP_PASS: 'xxx' # SMTP密码

      # 安全配置
      IPQPS: '80' # 单IP评论频率限制
      COMMENT_AUDIT: 'true' # 评论需要审核
      AKISMET_KEY: 'xxx' # 反垃圾评论key(前往akismet.com申请)

在项目目录(即.yml文件所处目录)运行Docker-compose。

docker-compose up -d

若服务器有安全组,开放8360端口

数据库初始化(SQLITE)

官方文档 https://waline.js.org/guide/database.html#sqlite

下载waline.sqlite,替换数据目录(存储卷)中原有的waline.sqlite文件

评论管理

官方文档 https://waline.js.org/guide/get-started/#%E8%AF%84%E8%AE%BA%E7%AE%A1%E7%90%86-%E7%AE%A1%E7%90%86%E7%AB%AF

部署完成后,访问 <IP>/ui/register 进行注册。首个注册的人会被设定成管理员。

登录后,即可管理评论。