Files
homelab/PLAN.md
T

3.5 KiB
Raw Blame History

🗺️ 家庭 All-in-One 实施计划与进度追踪 (PLAN)

更新时间:2026-11-06


阶段一:Mac mini 服务器底座初始化 (Base Infrastructure)

  • 1.1 局域网设备发现与体检:确认 Mac mini (192.168.31.164)、极空间 Z4 (192.168.31.185)、小米路由 (192.168.31.1) 状态。
  • 1.2 开启 Mac mini SSH 与免密登录:配置公钥免密认证,并在本机配置 ssh mini 快捷别名。
  • 1.3 建立本地基础设施仓库 (~/homelab):固化架构文档、实施计划与变更日志。
  • 1.4 Mac mini 电源与无头模式(Headless)调优:
    • 关闭系统休眠 (sleep 0)、关闭磁盘休眠 (disksleep 0)、开启断电恢复自动开机 (autorestart 1)、开启网络唤醒 (womp 1)。
    • 开启屏幕共享(VNC)备选通道,评估虚拟显示器(BetterDisplay / HDMI 欺骗器)。
  • 1.5 安装核心包管理与容器底座:
    • 安装 Xcode Command Line Tools 与 Homebrew (/opt/homebrew)。
    • 安装 OrbStack(轻量高性能 Docker 引擎与 Linux 运行时)。
  • 1.6 远端目录规范化:在 Mac mini 上创建 ~/homelab 与 ~/workspace 目录,与本机仓库结构对齐。

阶段二:公网网关、异地组网与 Azure 2C4G 云边联动 (Network & Edge)

  • 2.1 路由器固定 IP 与端口映射:
    • 在小米路由器 (192.168.31.1) 中将 Mac mini 固定为静态 IP(建议插网线固定有线 IP)。
    • 转发 1 个高位 HTTPS 端口(如 10443)和组网端口到 Mac mini。
  • 2.2 部署 Lucky(家庭公网瑞士军刀):
    • 配置域名 DNS API(Cloudflare / 阿里云 / 腾讯云),开启公网 IPv4/IPv6 DDNS 动态解析。
    • 自动申请并续签 *.home.<你的域名> 泛域名免费 SSL/TLS 证书。
    • 配置反向代理规则(统一通过 HTTPS 安全访问极空间、路由器后台与内部容器)。
  • 2.3 部署 Tailscale(打通 MacBook + Mac mini + Azure 2C4G):
    • 三端登录同一 Tailnet,开启 Mac mini 的 Subnet Router(子网路由:192.168.31.0/24),实现在外网免配置直接用 192.168.31.x 访问家里极空间与路由器。
  • 2.4 配置 Azure 2C4G 联动服务:
    • 部署 Uptime Kuma:从公网外部监控家里公网 IP 与核心服务,断网/掉线立即推送告警。
    • 部署 Caddy / Nginx 443 免端口反代:通过 Tailscale/WireGuard 隧道将轻量 Web 服务免端口(标准 443)暴露。

阶段三:24 小时远程开发工作站 & 本地 AI 算力环境 (Dev & AI Host)

  • 3.1 基础开发工具链安装:
    • 安装 git, tmux, btop, ripgrep, fd, jq, gh 等命令行效率工具。
    • 配置 Node.js (fnm/nvm)、Python (uv/miniconda) 等多版本隔离环境。
  • 3.2 VS Code / AI IDE Remote-SSH 联调:
    • 验证本机 MacBook Air 通过 ssh mini 免密直连开发、后台 tmux 任务保活。
  • 3.3 本地 AI 算力服务(可选):
    • 利用 M6 24GB 统一内存部署 Ollama + Open WebUI,向内网与本机提供私有大模型 API。

阶段四:家庭核心应用与极空间 Z4 联动(按需扩展)

  • 4.1 统一导航页与密码管理:部署 Sun-Panel / Homepage + Vaultwarden。
  • 4.2 极空间 SMB 自动挂载与影视自动化:挂载 192.168.31.185 共享目录,部署 MoviePilot + qBittorrent。
  • 4.3 智能家居中枢:部署 Home Assistant + Scrypted(摄像头接入 Apple HomeKit 安全视频)。