本文以hexo博客系统的朋友圈插件为例,解决大部分博客插件的安装与使用问题,撰供参考。

0. 准备环境

安装git

1
yum install git

image-20240516084700096

1. 保存项目

clone 项目并下载docker镜像

1
2
3
git clone https://github.com/Rock-Candy-Tea/hexo-circle-of-friends

docker pull yyyzyyyz/fcircle:latest

image-20240516084805300

2. 部署项目

启动docker

1
docker run --name fcircle -p 8000:8000 -v ${PWD}/data:/app/data -d yyyzyyyz/fcircle

image-20240516085146323

切换至clone好的项目路径,启动部署工具

1
2
3
cd hexo-circle-of-friends/

python3 deploy.py

image-20240516085224911

3. 检测项目

分别检测docker和api的运行状态

此处,stats、ps两种命令均可用

1
2
3
4
5
docker stats

docker ps

curl 127.0.0.1:8000/all

image-20240516085507902

需要注意,此时还无法通过域名访问,只能通过本机IP:8000访问

4. 域名转发^1

以宝塔面板为例,新建PHP项目后,点击设置中的重定向,设置为永久重定向。

image-20240516090717095

此时立即申请免费SSL证书,以便进行https访问,建议使用Let’s Encrypt的自动部署,可以解放双手,到期自动续签证书。

image-20240516090950255

证书申请成功后,即点击配置文件修改配置,其中需要保留证书和listen相关内容,其余代码均可删除。

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
upstream dis {#需要配置upstream
server 你的IP:端口;
}

server {
listen 填写自己的listen;
server_name fcircle.你的域名; #子域名

ssl_certificate 你的证书.pem;
ssl_certificate_key 你的证书.pem;
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
ssl_ciphers 你的密文:!MD5;

ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
# ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;

location / {
#proxy_pass http://localhost:8000;
#proxy_pass http://dis; #这种方法,会导致出现问题
proxy_pass http://你的IP:端口;#建议这种写法,和主域名保持一致

# add_header Access-Control-Allow-Origin "*" always; #这个不要加
# add_header Access-Control-Allow-Methods "POST, GET,PUT,DELETE, OPTIONS";
# add_header Access-Control-Allow-Headers "Origin, Authorization, Accept";
}

}

如果出现报错,则只粘贴最后一段location{}的内容,将原有的重定向代码内容替换

image-20240516094834385