
如何零成本部署 Publa
Publa 是一个免费开源的动态博客程序,基于 Next.js 开发,支持 SQLite 和 PostgreSQL 数据库,如果你的站点流量不大,可以通过 Vercel 和 Turso 的免费服务,实现零成本部署。
准备工作
准备工作很简单,你需要有 GitHub、Turso、Vercel 三个服务的账号。如果你已经有对应账号了,可以跳到下一步,如果还没有,可访问以下链接分别注册。
GitHub(代码仓库):https://github.com/
Turso(数据库):https://turso.tech/
Vercel(发布平台):https://vercel.com/
GitHub
前往 Publa 在 GitHub 上的项目主页 https://github.com/oldj/publa ,Fork 这个项目。
Turso
Turso 是一个云端 SQLite 数据库服务商,免费用户可创建 100 个数据库,总大小不超过 5G,每月读写次数也有限制,但对个人博客来说这个额度非常慷慨,足够大多数个人博客或小站点使用。
Publa 支持 SQLite 和 PostgreSQL 数据库,在这儿我们使用 Turso 的云 SQLite。
接下来,登录 Turso ,创建分组(Group)和数据库。
注意,在创建分组(Group)时可以选择位置,这也是数据库所在的位置,有 AP NorthEast、US West 等地区可选,见下图:

后面 Vercel 的 Function Region 也可以选择位置,建议将数据库和 Function Region 放在同一个地区,以提升两者的连接速度,比如都放在 AWS AP NorthEast 位置。
Vercel
最后的重点是在 Vercel 上部署 Publa,并连接 Turso 的数据库。
前面我们已经注册好了账号,接下来就是登录账号,继续下面的步骤。
导入 Git 项目
第一步,需要将 Vercel 和你的 GitHub 账号关联,然后在 Vercel 中新建一个项目,便可以看到导入 Git 仓库的界面。如下图所示。

如果你的项目很多,可以在这个界面搜索一下“publa”。找到对应的 GitHub 仓库后,点击右边的“Import”按钮,导入这个项目。
下一步,为这个项目取一个名字,除 Environment Variables 外的其他项目不用改动,使用默认值即可。

配置环境变量
要让 Publa 在 Vercel 上正常运行,你需要添加 4 个环境变量,如下图所示:

其中 DATABASE_URL 和 DATABASE_AUTH_TOKEN 可从 Turso 后台获取;JWT_SECRET 和 CRON_SECRET 可生成两个比较长的随机字符串,注意不可留空。
发布
接下来,点击那个 Deploy 按钮,发布,等待 1 ~ 2 分钟,看到 Vercel 提示发布成功时,你的站点就上线了!
Vercel 会自动为你的站点分配一个二级域名,如果你有自己的域名,可进入项目的设置页面绑定自己的域名,这个绑定也是免费的。
站点初始化
站点发布之后,数据库还是空的,此时,你可以访问https://你的站点域名/setup 页面进行初始化。

初始化界面如上图所示,在此选择语言,输入管理员用户名、邮箱、密码,点击提交即可。这个账号将是站长账号,拥有站点的最高权限。如果这是团队博客,进入后台后,你还可以添加普通管理员以及编辑账号。
一切顺利的话,此时你的博客就已经顺利安装并上线了。接下来,就开始愉快地创作吧!
评论: