部署
隔离网络部署
在无法访问公共互联网的环境中运行 ObjectOS。
隔离网络部署
隔离网络(air-gapped)部署适用于这样的客户网络:ObjectOS 在运行时无法 调用托管的控制平面或公共软件包注册表。
需要交付的内容
离线发布包应包含:
| 项目 | 用途 |
|---|---|
| ObjectOS 容器镜像 | 运行时二进制文件及依赖 |
objectstack.json 制品 | 不可变的应用定义 |
| 数据库迁移/初始化指南 | 客户业务数据库的搭建 |
| 环境模板 | 必需的密钥与运行时变量 |
| 运维清单 | 升级、回滚、备份与诊断 |
容器镜像与制品挂载遵循与标准 Docker 部署 相同的 约定;唯一的区别在于网络形态。
运行模式
使用基于文件的模式:将 ObjectOS 指向本地制品和由客户管理的业务数据库, 并保持云端控制平面未设置。
OS_ARTIFACT_FILE=/artifacts/objectstack.json
OS_BUSINESS_DB_URL=file:/var/lib/objectos/data.db
# Leave OS_CLOUD_URL unset to run fully offlineObjectOS 会将每个请求解析到打包的项目,并从磁盘加载制品。当
OS_CLOUD_URL 未设置时,不会向托管的控制平面发起任何调用。
网络要求
在此模式下,ObjectOS 不需要访问公共互联网。客户的网络规则应仅允许:
- 来自已批准入口或负载均衡器的入站 HTTP/HTTPS;
- 流向客户管理的业务数据库的出站数据库流量;
- 流向明确配置的集成的出站流量,例如 SMTP、对象存储、webhook 目标 或身份提供方。
身份验证
如果客户使用 OIDC/SSO,身份提供方必须能从隔离网络中访问。如果无法访问, 请使用本地的邮箱/密码身份验证,或在同一网络内托管的身份提供方。
升级流程
将制品视为不可变:
- 导入新的 ObjectOS 镜像。
- 将新制品放置在旧制品旁边。
- 更新挂载或环境变量,使其指向新制品。
- 重启 ObjectOS。
- 通过恢复上一个镜像标签或制品路径进行回滚。