友链朋友圈部署教程

由于前段时间朋友圈出了些问题 索性就重新部署一下 顺便记录下过程 以下是Github+MongoDB+Vercel+hexo-circle-of-friends

一、MongoDB

官网申请注册并创建数据库(度娘有很多教程就不再过多的阐述了),最终会拿到mongodb+srv:开头的连接配置

二、Github

1. fork项目

项目fork到自己的仓库并按官网教程workflow允许跟读写权限打开

2. 设置环境变量

在项目设置里的环境变量secret中添加如下变量,若使用其他数据库,请参考配置项说明

  • GH_NAME:github名称,也就是你的用户名

  • GH_EMAIL:github邮箱,填写你注册github的邮箱

  • GH_TOKEN:github访问token,获取方式,请参考官方文档,其中,Select scopes选择repoworkflow,最终效果如下:

    image-20240509163602663

  • STORAGE_TYPE:存储方式,填写mongodb

  • MONGODB_URI:mongodb配置(支持mongodb://mongodb+srv://

3. 启用workflow

三、Vercel

1. 设置环境变量

最终效果如下,其中VERCEL_ACCESS_TOKEN需要自行创建,总有些人会找不到tokens创建,是谁我不说

image-20240509165018819

2. 更换自定义域名

由于vercel被墙,需要绑定自定义域名后。在这个地址后面拼接/all尝试访问,出现数据就说明配置成功,这个地址就是前端所需的api地址,如下地址得替换自己的域名,并新增域名dns解析

image-20240509165619717

image-20240509165920961

四、常见问题

问题1:项目导入到vercel中一直部署不成功

日志参考:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
  error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
exit code: 1
╰─> [4 lines of output]
<string>:67: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
Building lxml version 4.6.4.
Building without Cython.
Error: Please make sure the libxml2 and libxslt development packages are installed.
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.
Error: Command "pip3 install" exited with 1

原因:

考虑可能是Node.js版本太高,有些依赖已遗弃

解决方案:

将Node.js版本从20.x降到18.x或以下,如图

image-20240509172436049