一、整体架构
把设备分工固定下来,后续部署时就不会在“文件放哪里、服务跑哪里、公网怎么访问”这些问题上反复摇摆。
Windows 笔记本
日常使用、SSH 远程操作、办公管理。
Mac mini
AI、Codex、Docker、数据库与自动化服务中心。
飞牛 NAS
存储、备份、素材归档与资料隔离。
GitHub
网页项目代码仓库与版本管理。
Cloudflare Pages
静态网页自动部署与公网访问。
一句话版:Windows 通过 SSH 操作 Mac mini,Mac mini 用 Codex 生成静态网页,GitHub 管理版本,Cloudflare Pages 自动发布公网网址,飞牛 NAS 做同步备份和素材存储。
二、Mac mini 的职责
主要运行
- Docker
- Codex
- PostgreSQL
- Qdrant
- Redis
- n8n
- OpenWebUI
- ComfyUI
短期不需要
- Caddy
- Nginx
- FastAPI
- 动态网页
- 网页连接数据库
阶段边界:第一阶段先跑通静态网页发布链路。数据库、动态 API、反向代理都等静态流程稳定后再加。
三、飞牛 NAS 的职责与权限
NAS 负责存储和备份,不建议跑数据库,也不建议直接托管网页运行目录。建议创建 AI 专用子账号 codex_ai。
NAS
├─ AI_Workspace AI工作区
├─ Web_Backup 网页项目备份
├─ Web_Assets 图片/视频/Logo等素材
├─ DB_Backup 数据库备份
├─ Knowledge 资料库,只读给AI
└─ Archive 重要资料,AI无权限
| NAS 目录 | codex_ai 权限 |
用途 |
|---|---|---|
| AI_Workspace | 读写 | AI 工作区,存放可被 AI 处理的临时资料和项目文件。 |
| Web_Backup | 读写 | 网页项目同步备份目录。 |
| Web_Assets | 读写或只读 | 图片、视频、Logo 等网页素材。素材定稿后可改为只读。 |
| Knowledge | 只读 | 资料库,可供 AI 检索和引用,但不允许随意改动。 |
| DB_Backup | 仅备份写入 | 数据库备份落地目录,尽量限制读取和修改范围。 |
| Archive / Photos / Finance / Family | 无权限 | 核心资料隔离,AI 不接触。 |
核心原则:AI 可以干活,但不能碰核心资料。
四、数据库放置方式
数据库运行数据放 Mac mini 本地 SSD,定时备份到 NAS。不要把数据库运行目录直接放在 NAS 共享盘。
原因很直接:NAS 共享盘网络延迟高,网络中断会影响数据库稳定性,长期运行还可能增加数据损坏风险。
五、远程访问方式
远程访问数据库和服务用 Tailscale。Mac mini 保持 Tailscale + Docker 的稳定组合,Windows 继续负责代理工具和日常办公。
Windows
↓
Tailscale
↓
Mac mini
↓
PostgreSQL / Qdrant / n8n / OpenWebUI
数据库连接示例:
Host: Mac mini 的 Tailscale IP
Port: 5432
建议:Mac mini 上不长期运行 Shadowrocket,避免和 Tailscale、Docker、后台服务产生稳定性冲突。
六、Windows 远程 SSH 使用 Codex
2026-06-08 已完成 Windows 远程 SSH 方案。Windows 只是远程操作入口,Codex、Git 和网页项目文件仍然运行并保存在 Mac mini 上。
Windows 负责
- 打开 SSH 终端连接 Mac mini
- 输入 Codex 指令和 Git 命令
- 查看 GitHub、Cloudflare 和公网网页
- 日常办公、资料整理和浏览器管理
Mac mini 负责
- 运行 Codex
- 保存网页项目文件
- 执行 Git 提交和推送
- 运行 Docker、数据库和后续 AI 服务
Windows
↓
SSH 远程连接
↓
Mac mini
↓
Codex 修改网页项目
↓
/Users/cygg/Documents/Todo_xspace/Macmini_codex/web_projects
↓
GitHub / Cloudflare Pages / 飞牛同步
常用进入方式
ssh <Mac用户名>@<Mac mini IP或主机名>
cd /Users/cygg/Documents/Todo_xspace/Macmini_codex/web_projects/homepage
codex
安全边界:SSH 建议只在局域网或 Tailscale 内使用,不建议直接暴露到公网。通过 SSH 操作时,文件实际仍生成在 Mac mini,不是在 Windows 本地。
七、静态网页发布方案
短期网页部分保持最简链路:Codex 写网页,GitHub 存代码,Cloudflare Pages 自动发布公网网址。
更新流程
Codex 修改 HTML
↓
git add .
↓
git commit -m "update website"
↓
git push
↓
Cloudflare Pages 自动更新公网网页
结论:现在不用手动拖拽上传 Cloudflare,也暂时不需要 Caddy。
八、项目目录建议
Mac mini 本地目录
/Users/cygg/Documents/Todo_xspace/Macmini_codex/web_projects
├─ homepage
│ ├─ index.html
│ ├─ style.css
│ ├─ app.js
│ └─ assets
│
├─ product_page
│ ├─ index.html
│ └─ assets
│
└─ ai_gallery
├─ index.html
├─ style.css
└─ assets
飞牛同步目录
电脑端:/Users/cygg/Documents/Todo_xspace
NAS 端:存储空间1/我的文件/Todo_xspace
网页项目放在飞牛同步目录内,由飞牛同步实时同步到 NAS。GitHub 负责版本历史,NAS 负责本地备份和素材归档。
九、Cloudflare 与 Caddy 的区别
| 工具 | 作用 | 当前阶段是否需要 |
|---|---|---|
| Cloudflare Pages | 把 GitHub 仓库里的静态网页自动部署成公网可访问网址。 | 需要 |
| Caddy | 把 Mac mini 本地 HTML 文件托管成局域网网页,例如 http://macmini.local:8080。 |
短期不需要 |
十、当前配置顺序
飞牛 NAS 创建目录先建立 AI、网页、素材、备份、知识库和归档目录。
创建
codex_ai按权限矩阵配置读写、只读和无权限。Mac mini 装基础工具安装 Docker、Codex、Git。
配置 Windows SSHWindows 远程连接 Mac mini,并在 Mac mini 上运行 Codex。
创建项目根目录建立
/Users/cygg/Documents/Todo_xspace/Macmini_codex/web_projects。创建 homepage准备第一个静态网页项目。
生成网页文件用 Codex 创建
index.html、style.css、app.js。创建 GitHub 仓库把 homepage 作为第一个仓库或子项目。
推送到 GitHub执行
git add、git commit、git push。绑定 Cloudflare Pages选择 GitHub 仓库并启用自动部署。
测试公网网址修改一次网页,确认 push 后自动更新。
配置飞牛同步把
/Users/cygg/Documents/Todo_xspace 同步到 NAS。后续再扩展服务数据库、n8n、ComfyUI、OpenWebUI 放到第二阶段。
十一、第一阶段边界
第一阶段只做静态网页链路:Windows SSH 远程操作、Mac mini 本地生成、GitHub 管理、Cloudflare 发布、飞牛同步到 NAS。这样最简单,最容易跑通,也方便后面升级。
| 现在做 | 以后再做 |
|---|---|
|
|