从个人服务到可部署演示:发布完整性、Terraform 与 AWS

Sirui Liu Lv4

语言: English | 简体中文

发布日期:2026-10-20

我把 FLH 的个人工作台与精选只读演示分开,完成服务边界、预计算模型 artifact、Linux 打包、浏览器验收、Terraform 基础设施与 EC2 安装验证。

我的工程贡献:定义运行时和数据边界,把源码来源连接到发布身份,并推进 SSM 管理的 AWS 部署、升级与回滚流程。

隔离个人数据与付费调用

完整服务存储个人学习记录并提供写操作。作品演示需要不同合同:合成数据、可检查的少量工作流和有界运行时。

演示模式用包裹整个服务器的边界,仅允许少数路由上的 GET / HEAD;其他路径或写方法在业务 handler 执行前拒绝。SQLite 以 immutable artifact 打开,live provider 禁用。

语义与 Hybrid preset 使用预计算 E5 文档和查询向量。演示运行的是进程内 artifact index,个人服务才使用 Qdrant。关键词可自由输入,语义/混合查询限定 preset,访客不能触发新 embedding 请求。

把 artifact 作为发布的一部分

Linux amd64 / arm64 包包含 Go binary、React、合成数据库、向量、元数据和验证工具,并记录源码身份、artifact 身份与 SHA-256 manifest。

启动检查 migration ledger 及版本化 domain fingerprint,覆盖 admission、extraction selection 等影响可见知识的事实。语义不兼容时拒绝启动,不静默展示不一致数据。

验收还发现静态文件 symlink 逃逸。我用 Go os.Root 限制文件打开范围,并用原有 harness 复验,连接具体故障与发布边界。

围绕用户路径检查

Public-demo CI 覆盖 HTTP、浏览器、受控失败探针及清理。打包阶段同时检查 startup ownership、readiness、端口占用和临时目录清理,让演示包具有可操作性,而非只在开发机启动。

小而清楚的 AWS 运维模型

Terraform 管理单台 EC2、私有 S3 release storage、范围受限 IAM 示例和 Session Manager。管理不需要入站 SSH,应用保持 loopback listener。

安装器下载具名发布包,验证 checksum / artifact identity,切换 active release,再检查 readiness 与 live identity。发布后验证失败时回滚至前一版本。

项目记录了由操作者执行的 verified-source arm64 部署与升级:service active / ready、身份匹配,并通过 SSM port forward 打开演示。关闭 tunnel 不会停止 EC2。

下一阶段:公开 HTTPS

我还准备了显式启用的 Elastic IP、nginx、DNS preflight 和证书续期检查。Terraform 改动有开关,host tool 拒绝 listener 冲突和不满足要求的 DNS。

部署记录确认 EC2 与私有 SSM 访问;公开 HTTPS cutover 仍待执行。 构建功能、打包、部署和公开访问是不同里程碑,各自有对应检查。

实现结合 AI 编码工具,由我负责方向与审查。云运行结果来自链接报告中的操作者记录。

服务器边界 · 打包 · AWS 部署 · HTTPS 工具 · CI

  • 标题: 从个人服务到可部署演示:发布完整性、Terraform 与 AWS
  • 作者: Sirui Liu
  • 创建于 : 2026-10-20 12:00:00
  • 更新于 : 2026-10-25 12:00:00
  • 链接: https://vanquisher.world/zh-CN/2026/10/20/flh-readonly-demo-aws/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。