音乐播放器的部署

前言

我一般喜欢将 github 项目先 git 到本地,改成自己喜欢的样子再部署 :grin:

这篇记录的是:把音乐播放器项目部署到 Cloudflare Pages,并补上访问密码和 D1 持久化。

1. 先准备好 GitHub 项目

1.1 项目来源

github 项目原作者地址:
akudamatata/Solara: 一个极简风格的基于免费API的音乐播放器

先把项目 fork 或者同步到自己的 GitHub 仓库。这个项目用 CF 部署很快,基本几分钟就能跑起来。

2. 在 Cloudflare Pages 导入 GitHub 仓库

2.1 找到 Pages 入口

登录 Cloudflare Dashboard,进入 Workers & Pages,点击 Create -> Pages -> Connect to Git,授权并选择你的 GitHub 仓库。

音乐播放器1.png

点击创建应用程序,一般会先到 Workers 这个界面:

音乐播放器2.png

Pages 入口在下方,点击开始使用即可进入 Pages 页面导入 GitHub 项目:

音乐播放器3.png

2.2 选择分支与构建参数

选择好项目后进入配置步骤,分支通常选 main

构建设置建议如下:

  1. Framework preset: None
  2. Build command: exit 0(这个项目不需要构建)
  3. Build output directory: /(若界面校验不通过就填 .
  4. Root directory: 留空(或 /

音乐播放器4.png

3. 首次部署并验证

直接点击保存并部署,等待首次部署完成。

部署成功后,先打开 https://你的项目.pages.dev 验证页面能正常访问。

音乐播放器5.png

4. 配置访问密码(可选)

如果要启用访问密码,在 Pages 项目里设置环境变量:

  1. Settings -> Variables and Secrets
  2. 新增 PASSWORD=你的口令
  3. 保存后重新部署一次

音乐播放器6.png

这里创建变量就是密码。重新部署后,访问时就会要求输入密码。

音乐播放器7.png

5. 配置 D1 云端持久化(可选)

5.1 创建 D1 数据库

  1. Workers & Pages -> D1 -> Create database
  2. 数据库名可以自定义

音乐播放器8.png
音乐播放器9.png

5.2 绑定 D1 到 Pages 项目

  1. 回到 Pages 项目:Settings -> Bindings -> Add binding -> D1
  2. Binding name 必须填 DB
  3. 绑定刚创建的数据库并保存

音乐播放器10.png
音乐播放器11.png

5.3 初始化数据表

在 D1 的 Query 中执行以下 SQL:

1
2
3
4
5
6
7
8
9
10
11
CREATE TABLE IF NOT EXISTS playback_store (
key TEXT PRIMARY KEY,
value TEXT,
updated_at TEXT DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE IF NOT EXISTS favorites_store (
key TEXT PRIMARY KEY,
value TEXT,
updated_at TEXT DEFAULT CURRENT_TIMESTAMP
);

音乐播放器12.png
音乐播放器13.png

5.4 验证 D1 是否生效

再触发一次部署(Deployments 里点 Retry deployment,或推一次新 commit)。

打开 /api/storage?status=1,返回 d1Available: true 就说明绑定成功。

音乐播放器14.png

6. 完成

到这里,你的音乐播放器就已经具备了:

  1. Cloudflare Pages 自动部署
  2. 可选访问密码保护
  3. D1 云端数据持久化