跳至主要內容

部署和配置 waline

MonoLogueChi大约 1 分钟

本节部署和配置 waline。

注意

请勿照搬本文中的命令,请先理解命令,然后检查自己的实际情况是否和本文相同,并且正确替换用户名和目录。

提示

详细内容请看文档open in new window

提示

Waline 依赖 nodejs 环境,相关文章请看 安装和配置 nodejs

创建目录和安装

创建一个目录

mkdir waline && cd waline

npm install @waline/vercel

创建数据库目录

mkdir database && wget -O ./database/waline-0.sqlite https://github.com/walinejs/waline/raw/main/assets/waline.sqlite

创建运行脚本

code run-waline-0.sh

写入内容并保存

#!/bin/bash

# 安全域名
export SECURE_DOMAINS="waline-admin.u2sb.com,www.u2sb.com" \

# 强制登录
LOGIN=force

# 数据库
SQLITE_PATH=/home/ubuntu/www/waline/database/
SQLITE_DB=waline-0
JWT_TOKEN=KSNls

# 站点配置
SITE_NAME="帅比网"
SITE_URL="https://www.u2sb.com"

# 邮件通知
SMTP_SERVICE=QQ
SMTP_USER=
SMTP_PASS=
SENDER_NAME=
AUTHOR_EMAIL=

nohup node node_modules/@waline/vercel/vanilla.js 11645 > /dev/null 2>&1 &

echo $! > waline-0.pid

配置守护进程

创建文件并编辑

code waline-0.service

编辑并保存

[Unit]
Description = waline
After = network.target remote-fs.target nss-lookup.target

[Service]
Type = exec
Group = ubuntu
User = ubuntu
PIDFile = /home/ubuntu/www/waline/waline-0.pid
WorkingDirectory = /home/ubuntu/www/waline/
ExecStartPre = /usr/bin/rm -f /home/ubuntu/www/waline/waline-0.pid
ExecStart = /usr/bin/sh /home/ubuntu/www/waline/run-waline-0.sh
ExecStartPost = /usr/bin/sleep 1s
KillSignal = SIGTERM

Restart = always
RestartSec = 5s

[Install]
WantedBy = multi-user.target

添加开机启动

sudo systemctl enable /home/ubuntu/www/waline/waline-0.service

并测试启动

sudo systemctl start waline-0

此时可以尝试使用前面配置的端口 11645 访问。

配置反向代理

接着搞 caddy,创建文件并编辑

cd ../caddy

code conf.d/waline-admin.u2sb.com.caddyfile

写入内容并保存

waline-admin.u2sb.com.u2sb.com: {
    import snippets/u2sb.conf
    reverse_proxy 127.0.0.1:11645
}

重新加载 caddy 配置

sudo systemctl reload caddy