码桶
发现社区成员的开源项目
README.md1.5 KB
# 素嗒会议转发 (Meeting Forward)
一键粘贴腾讯会议邀请文本,自动分配专属无 `4` 靓号短链,直达入会。
---
## 🚀 部署指南
### 1. 部署到 Cloudflare (D1 数据库)
```bash
# 1. 安装依赖
npm install
# 2. 创建 Cloudflare D1 数据库 (将返回的 database_id 写入 wrangler.jsonc)
npx wrangler d1 create meeting-forward-db
# 3. 初始化远程数据库表结构
npx wrangler d1 execute meeting-forward-db --remote --command "CREATE TABLE IF NOT EXISTS meetings (id TEXT PRIMARY KEY, slug TEXT NOT NULL UNIQUE, meeting_id TEXT, dm_code TEXT, dedup_hash TEXT NOT NULL UNIQUE, topic TEXT, raw_text TEXT NOT NULL, user_session_id TEXT NOT NULL, created_at INTEGER NOT NULL, expires_at INTEGER NOT NULL);"
# 4. 发布上线
npm run deploy
```
---
### 2. 部署到 VPS (PostgreSQL 17 数据库)
**方式 A: Docker Compose 一键构建部署 (推荐 🌟)**
直接修改 `.env` 中的端口和数据库存储目录,然后启动:
```bash
docker-compose up -d --build
```
**方式 B: Node.js 本地直接运行**
需要在本地运行 PostgreSQL 17,并在 `.env` 中配置 `DATABASE_URL`:
```bash
npm run dev:vps
```
---
## 🔀 运行模式自动切换
代码中通过 `src/db/index.ts` 自动判断:
- **Cloudflare 模式**:Worker 环境中检测到 `env.DB` 绑定时,自动切换为 **Cloudflare D1** 数据库;
- **VPS 模式**:检测到普通 Node.js / Docker 环境时,自动连接使用 **PostgreSQL 17** 数据库。