Update README and project cleanup

This commit is contained in:
inkling
2026-04-08 14:52:09 +08:00
commit fafd267288
71 changed files with 14865 additions and 0 deletions

242
CLOUDFLARE_DEPLOYMENT.md Normal file
View File

@@ -0,0 +1,242 @@
# DMP Cloudflare Tunnel 部署指南
## 🎯 部署目标
- **域名**: dmp.ink1ing.tech
- **本地端口**: 3456
- **Cloudflare 账号**: huinkling@gmail.com
---
## 📋 快速开始3步完成
### 第一步:设置 Cloudflare Tunnel
在终端中运行:
```bash
cd /Users/inkling/Desktop/dmp
./setup-tunnel.sh
```
或者双击打开 `setup-tunnel.sh` 文件。
这个脚本会自动完成:
1. ✅ 登录 Cloudflare如果还未登录
2. ✅ 创建名为 `dmp-tunnel` 的隧道
3. ✅ 配置 DNS 记录 `dmp.ink1ing.tech`
4. ✅ 验证配置
---
### 第二步:启动服务
**macOS 用户(推荐)**
双击运行 `start-tunnel.command`
**或在终端运行**
```bash
./start-tunnel.sh
```
---
### 第三步:访问应用
- **公网访问**: https://dmp.ink1ing.tech
- **本地访问**: http://localhost:3456
---
## 🛠 手动设置步骤(如果自动脚本失败)
### 1. 登录 Cloudflare
```bash
cloudflared tunnel login
```
浏览器会打开,使用 `huinkling@gmail.com` 登录并授权域名 `ink1ing.tech`
---
### 2. 创建 Tunnel
```bash
cloudflared tunnel create dmp-tunnel
```
这会创建一个隧道并生成凭证文件到 `~/.cloudflared/` 目录。
---
### 3. 配置 DNS
```bash
cloudflared tunnel route dns dmp-tunnel dmp.ink1ing.tech
```
这会在 Cloudflare DNS 中自动添加一条 CNAME 记录,将 `dmp.ink1ing.tech` 指向你的 tunnel。
---
### 4. 启动服务
```bash
# 启动 Node.js 服务器
node server.js &
# 启动 Cloudflare Tunnel
cloudflared tunnel --config cloudflare-tunnel.yml run dmp-tunnel
```
---
## 📁 文件说明
- **cloudflare-tunnel.yml**: Tunnel 配置文件
- **setup-tunnel.sh**: 一键设置脚本
- **start-tunnel.sh**: 启动脚本(终端)
- **start-tunnel.command**: 启动脚本macOS 双击)
- **server.js**: DMP 应用主程序
---
## 🔍 验证和调试
### 查看所有 Tunnels
```bash
cloudflared tunnel list
```
### 查看 Tunnel 信息
```bash
cloudflared tunnel info dmp-tunnel
```
### 查看 DNS 路由
```bash
cloudflared tunnel route dns list
```
### 测试本地服务
```bash
curl http://localhost:3456
```
---
## 🚫 停止服务
在运行 Tunnel 的终端中按 `Ctrl+C`
---
## 🔧 故障排除
### 问题Tunnel 无法启动
**解决方案**
```bash
# 检查凭证文件是否存在
ls -la ~/.cloudflared/
# 重新登录
cloudflared tunnel login
# 删除并重建 tunnel
cloudflared tunnel delete dmp-tunnel
cloudflared tunnel create dmp-tunnel
```
---
### 问题DNS 未生效
**解决方案**
1. 登录 Cloudflare Dashboard
2. 进入 `ink1ing.tech` 域名设置
3. 检查 DNS 记录中是否有 `dmp.ink1ing.tech` 的 CNAME 记录
4. 手动添加或修复:
```bash
cloudflared tunnel route dns dmp-tunnel dmp.ink1ing.tech
```
---
### 问题:端口被占用
**解决方案**
```bash
# 查找占用 3456 端口的进程
lsof -i :3456
# 停止该进程
kill -9 <PID>
```
---
## 🌟 高级配置
### 添加多个子域名
编辑 `cloudflare-tunnel.yml`
```yaml
tunnel: dmp-tunnel
credentials-file: /Users/inkling/.cloudflared/dmp-tunnel.json
ingress:
- hostname: dmp.ink1ing.tech
service: http://localhost:3456
- hostname: api.ink1ing.tech
service: http://localhost:3456
- service: http_status:404
```
然后添加 DNS 路由:
```bash
cloudflared tunnel route dns dmp-tunnel api.ink1ing.tech
```
---
### 开机自启动macOS
创建 LaunchAgent
```bash
# 安装为系统服务
sudo cloudflared service install
```
---
## 📞 需要帮助?
如果遇到问题,检查:
1. Cloudflare 账号是否正确登录
2. 域名 `ink1ing.tech` 是否已添加到 Cloudflare
3. DNS 记录是否正确配置
4. 本地服务器是否正常运行(访问 http://localhost:3456
---
## ✅ 成功标志
当你看到以下输出,说明部署成功:
```
✅ DMP 服务已启动 (PID: xxxxx)
🌐 本地访问: http://localhost:3456
🔗 正在启动 Cloudflare Tunnel...
📌 公网访问地址: https://dmp.ink1ing.tech
2024-04-01 xx:xx:xx Connection registered connIndex=0 ...
```
现在你可以通过 https://dmp.ink1ing.tech 在任何地方访问你的应用!🎉