抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

起因

原先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;
}
}

评论