惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Martin Fowler
Martin Fowler
WordPress大学
WordPress大学
S
SegmentFault 最新的问题
罗磊的独立博客
Apple Machine Learning Research
Apple Machine Learning Research
The Cloudflare Blog
L
LangChain Blog
博客园 - 司徒正美
G
Google Developers Blog
博客园 - 【当耐特】
GbyAI
GbyAI
月光博客
月光博客
人人都是产品经理
人人都是产品经理
D
DataBreaches.Net
大猫的无限游戏
大猫的无限游戏
A
About on SuperTechFans
Microsoft Azure Blog
Microsoft Azure Blog
V
Visual Studio Blog
D
Docker
MongoDB | Blog
MongoDB | Blog
Vercel News
Vercel News
Stack Overflow Blog
Stack Overflow Blog
Jina AI
Jina AI
博客园 - 聂微东

云藉のBlog

自己总结的钢四pve经验(一) 第五年 近况·丙午大暑 相册·上海之行 相册·南京之行 随笔·一种名为爱好的坎 近况·丙午立夏 近况·丙午惊蛰 近况·乙巳立春 2026 近况·乙巳冬至 近况·乙巳重阳 近况·乙巳秋分 数据结构·单链表 近况·乙巳·夏 四年 十八 青岛六十七中校歌 近况·6月9日 二〇二五 近况·甲辰·夏 三周年 十七·启航 近况·甲辰·春
在自己的服务器上部署Waline
云藉 · 2025-10-09 · via 云藉のBlog

起因

原先waline部署在vercel上,但是经常访问速度慢,效率比较低。故打算在自己的云服务器上部署waline。

部署

在宝塔面板和腾讯云平台上开放端口8360。

把waline给clone下来。

1
2
git clone https://github.com/walinejs/waline.git
cd waline

添加配置文件。

1
vim ./.env

按键盘上的I,开始编辑,配置好相应的环境变量。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 基本配置
SITE_NAME=
SITE_URL=

# 显示配置
LEVELS='0,10,20,50,100,200'

# 安全配置
SECURE_DOMAINS=

# 邮件配置
SMTP_HOST=
SMTP_PORT=
SMTP_USER=
SMTP_PASS=
AUTHOR_EMAIL=

# MySQL配置
MYSQL_DB=
MYSQL_USER=
MYSQL_PASSWORD=

info 在SECURE_DOMAINS这个环境变量中,博客域名和waline部署的域名都要有,不然博客中无法正常显示评论

Esc,输入:wq保存并退出。

然后用Docker构建镜像并部署。

1
2
docker build -t lizheming/waline -f packages/server/Dockerfile .
docker run -d --env-file .env -p 8360:8360 lizheming/waline

添加反向代理

在宝塔面板的站点修改中,点击配置文件,把以下内容覆盖上去:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
server
{
listen 80;
listen 443 ssl ;
http2 on;
server_name your.domain.server.name;

root /www/wwwroot/your.domain.server.name;
if ($server_port !~ 443){
rewrite ^(/.*)$ https://$host$1 permanent;
}
#CERT-APPLY-CHECK--START
# 用于SSL证书申请时的文件验证相关配置 -- 请勿删除
include /www/server/panel/vhost/nginx/well-known/your.domain.server.name.conf;
#CERT-APPLY-CHECK--END
include /www/server/panel/vhost/nginx/extension/your.domain.server.name/*.conf;

#SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
#error_page 404/404.html;
ssl_certificate /www/server/panel/vhost/cert/your.domain.server.name/fullchain.pem;
ssl_certificate_key /www/server/panel/vhost/cert/your.domain.server.name/privkey.pem;
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
add_header Strict-Transport-Security "max-age=31536000";

# proxy to 8360
location / {
proxy_pass http://127.0.0.1:8360;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header REMOTE-HOST $remote_addr;
add_header X-Cache $upstream_cache_status;
# cache
add_header Cache-Control no-cache;
expires 12h;
}
}