189 lines
7.6 KiB
Markdown
189 lines
7.6 KiB
Markdown
# 服务器服务部署时间线
|
||
|
||
记录东京服务器(43.163.225.30)上每个服务的诞生背景和部署时间。
|
||
|
||
---
|
||
|
||
## 2026 年之前
|
||
|
||
### 🔴 Beast Trader 策略运行(起点)
|
||
|
||
- **背景**:你已经在服务器上运行 Freqtrade 策略,但无法实时监控运行状态
|
||
- **痛点**:策略有没有在跑、最近有没有成交、收益如何——这些信息需要一个面板来展示
|
||
- **这是一切的起点**
|
||
|
||
---
|
||
|
||
## 2026 年上半年
|
||
|
||
### 🟡 v1.0 — Beast Dashboard(监控面板)
|
||
|
||
- **部署时间**:约 2026 年初
|
||
- **背景**:策略运行在 freqtrade 上,需要一个 Web 面板实时监控
|
||
- **技术选型**:FastAPI 后端(端口 9000)+ 纯 HTML 前端,Caddy 反代 `dashboard.xybkwd.top`
|
||
- **核心功能**:实时展示策略状态、持仓、最近交易记录
|
||
- **意义**:服务器上第一个自建 Web 服务,打开了后续所有服务的大门
|
||
|
||
---
|
||
|
||
### 🟢 v2.0 — Telegram Bot 通知
|
||
|
||
- **部署时间**:Dashboard 之后不久
|
||
- **背景**:Dashboard 需要人主动去看,策略有信号时需要主动推送
|
||
- **技术选型**:Freqtrade 原生 Telegram 集成 + 自建 `@jason5612_bot`
|
||
- **核心功能**:策略信号推送、交易通知、每日日报推送到微信(通过 Server酱)
|
||
- **意义**:从"人查面板"升级到"机器主动通知"
|
||
|
||
---
|
||
|
||
### 🟢 v3.0 — Caddy 反向代理
|
||
|
||
- **部署时间**:服务数量达到 3 个左右时
|
||
- **背景**:每个服务都跑在不同端口,直接 IP:端口 访问体验差,且没有 HTTPS
|
||
- **技术选型**:Caddy(自动 Let's Encrypt 证书)+ 域名(`xybkwd.top` 系列)
|
||
- **核心功能**:统一入口、HTTPS、basic_auth 保护
|
||
- **意义**:从此访问服务变成正常的域名访问,安全性也解决了
|
||
|
||
---
|
||
|
||
### 🔵 v4.0 — Gitea(私有 Git 服务)
|
||
|
||
- **部署时间**:约 2026 年中
|
||
- **背景**:策略代码、面板代码都在服务器上手工改,没有版本控制,一旦改坏无法回滚
|
||
- **技术选型**:Gitea(轻量级自托管 Git)+ `gitea.xybkwd.top`
|
||
- **核心功能**:代码版本管理、跨设备同步、作为知识库中枢
|
||
- **意义**:从此所有代码改动都有历史记录,服务器上的"作坊"升级成"有规范的工程"
|
||
|
||
---
|
||
|
||
### 🟣 v5.0 — 灵感收集器(Memos → AI → Gitea)
|
||
|
||
- **部署时间**:约 2026 年 5 月
|
||
- **背景**:你有很多碎片想法(微信、备忘录),但散落各处,无法沉淀
|
||
- **技术选型**:Memos(碎片记录)+ Daily Digest 脚本(DeepSeek API 分析)+ Gitea 存储
|
||
- **核心功能**:碎片灵感 → AI 深度分析 → Markdown 归档 → Gitea
|
||
- **cron**:每日 22:00 北京时间自动运行
|
||
- **意义**:第一次把"AI 分析"引入工作流,不只是执行策略,还帮你思考
|
||
|
||
---
|
||
|
||
### 🟠 v6.0 — 栖云导航页(nav.xybkwd.top)
|
||
|
||
- **部署时间**:约 2026 年 5-6 月
|
||
- **背景**:服务越来越多,需要一个统一入口
|
||
- **技术选型**:纯静态 HTML(`/var/www/nav/index.html`)+ Caddy 静态托管
|
||
- **核心功能**:所有服务的导航、快速跳转
|
||
- **意义**:"栖云"这个名字就是这时候定的,个人数据中心的雏形出现了
|
||
|
||
---
|
||
|
||
### 🔴 v7.0 — 每日要闻(brief.xybkwd.top)
|
||
|
||
- **部署时间**:约 2026 年 6 月初
|
||
- **背景**:每天想快速了解重要新闻,但不想被信息流淹没
|
||
- **技术选型**:RSS 抓取(7 个源)→ DeepSeek 总结 → `brief.html` 两栏展示
|
||
- **核心功能**:AI 精选摘要、分类展示、移动端适配
|
||
- **cron**:每 3 小时抓取一次,30 分钟后 AI 总结
|
||
- **意义**:第一次把"新闻聚合 + AI 总结"做成自动化流水线
|
||
|
||
---
|
||
|
||
### 🔵 v8.0 — Todo 系统(todos.html + todo_server.py)
|
||
|
||
- **部署时间**:约 2026 年 6 月
|
||
- **背景**:灵感收集器分析了你的想法,但产生的待办事项没有地方管理
|
||
- **技术选型**:Python HTTP Server(端口 9001)+ PWA 前端(`todos.html`)
|
||
- **核心功能**:CRUD 待办、优先级、分类、从灵感自动提取 todo
|
||
- **意义**:灵感 → 待办 → 执行的闭环形成了
|
||
|
||
---
|
||
|
||
### 🟢 v9.0 — AI 对话(chat.xybkwd.top)
|
||
|
||
- **部署时间**:约 2026 年 6 月
|
||
- **背景**:想在手机上直接和 AI 对话,而不依赖 WorkBuddy 桌面端
|
||
- **技术选型**:FastAPI + SQLite(端口 8900)+ 内嵌 HTML/JS 前端
|
||
- **核心功能**:移动端 AI 对话、对话历史存储、Markdown 渲染
|
||
- **意义**:WorkBuddy 的能力延伸到了手机端
|
||
|
||
---
|
||
|
||
### 🟡 v10.0 — 系统备份自动化
|
||
|
||
- **部署时间**:约 2026 年 6 月中旬
|
||
- **背景**:服务越来越多,一旦服务器出问题,重建成本很高
|
||
- **技术选型**:`backup.sh` 脚本 + cron 每日 04:00 自动备份
|
||
- **备份内容**:系统配置、Docker 元数据、SQLite 数据库、工作目录、SSL 证书
|
||
- **意义**:从"能跑"升级到"不怕丢"
|
||
|
||
---
|
||
|
||
## 当前状态(2026-06-15)
|
||
|
||
| 服务 | 域名 | 端口 | 状态 |
|
||
|:---|:---|:---:|:---:|
|
||
| Caddy(反代) | 各域名 | 80/443 | ✅ 运行中 |
|
||
| Gitea | gitea.xybkwd.top | 3000 | ✅ 运行中 |
|
||
| Memos | memo.xybkwd.top | 5230 | ✅ 运行中 |
|
||
| Beast Dashboard | dashboard.xybkwd.top | 9000 | ✅ dry-run 运行中 |
|
||
| AI Chat | chat.xybkwd.top | 8900 | ✅ 运行中 |
|
||
| Todo Server | nav.xybkwd.top/api | 9001 | ✅ 运行中 |
|
||
| 每日要闻 | brief.xybkwd.top | 静态 | ✅ 运行中 |
|
||
| 栖云导航 | nav.xybkwd.top | 静态 | ✅ 运行中 |
|
||
| 灵感收集器 | — | cron | ✅ 每日 22:00 运行 |
|
||
| 系统备份 | — | cron | ✅ 每日 04:00 运行 |
|
||
|
||
---
|
||
|
||
## 演化规律
|
||
|
||
每次加新服务,都遵循同一个模式:
|
||
|
||
```
|
||
痛点出现 → 找到一个最小可用的技术方案 → 快速上线 → 用一段时间 → 发现新问题 → 迭代或加新服务
|
||
```
|
||
|
||
没有一开始就做宏大规划,都是按需生长。现在的架构是 **10 次迭代** 自然演化的结果。
|
||
|
||
---
|
||
|
||
### 2026-06-15 — Calibre-Web 电子书库上线
|
||
|
||
**背景**:冯总在文石阅读器上读书并做标注,需要一个统一管理平台,且与 AI 打通。
|
||
|
||
**部署内容**:
|
||
- Docker 部署 `linuxserver/calibre-web:latest`
|
||
- 端口:8083,Caddy 反代到 `books.xybkwd.top`
|
||
- 数据目录:`~/calibre-web/books`(图书库)、`~/calibre-web/config`(配置)
|
||
- nav 导航页新增电子书库卡片(琥珀色书籍图标)
|
||
|
||
**后续计划**:
|
||
- 上传图书文件
|
||
- 打通文石标注同步(Calibre Companion / WebDAV)
|
||
- 开发 AI 读书助手(摘要生成、笔记整理、微信读书同步)
|
||
- 建立独立 Gitea 仓库 `ebook-library` 管理书库相关代码和文档
|
||
|
||
**意义**:个人知识管理从多个碎片(Memos、要闻、Gitea)走向阅读 → 标注 → AI 分析 → 笔记归档的完整闭环。
|
||
|
||
|
||
### 2026-06-15 — Lucky 清除 & 全面安全加固
|
||
|
||
**背景**:冯总要求排查服务器安全状态,确保纯私有化部署的个人服务不对外暴露。
|
||
|
||
**排查发现**:
|
||
- Lucky 已无实质作用(进程、Docker、二进制均不存在),仅残留 配置目录(132KB)
|
||
- 所有服务的 Caddy basicauth 认证缺失(之前设置后被取消)
|
||
- ufw 残留 Lucky 端口规则(16601/tcp)和多余规则(9001/tcp)
|
||
- Shadowsocks 服务正常运行(31567/tcp,代理用途)
|
||
- fail2ban 未安装
|
||
|
||
**执行操作**:
|
||
- 彻底删除 (无 Docker 镜像/容器/卷残留)
|
||
- 恢复所有个人服务的 basicauth 保护(用户名 ,密码 )
|
||
- 加密的服务:gitea / dashboard / memo / nav / books
|
||
- 不加的服务:blog(公开)、vaultwarden(自身有登录)
|
||
- Caddyfile 备份到 server-ops 仓库
|
||
|
||
**安全铁律**:
|
||
- 严禁取消 basicauth,任何调试通过 localhost 不改 Caddyfile
|