Files

23 lines
1.1 KiB
Plaintext
Raw Permalink Normal View History

feat(交付): 客户侧两台服务器离线部署包 内网机/外网机各起一套栈,两台之间不开任何端口,文件只经光闸在 gate/out 与对端 gate/in 之间单向摆渡。一份 compose + 一份 config + 一份 nginx 模板,全部差异收在 .env 里。 - docker-compose.yml:5 服务只发布前端端口;app 容器 IP 锁死并由 compose 注入 -Dcode.snowflake.workid.<IP>=<WORK_ID>,绕开兜底 99 超雪花 5 位上限导致启动即崩的问题 - .env.iw / .env.ow:出厂配置与随机口令已填好,仅 MESHSAFE_SECRET 故意留占位(以 MeshSafe 侧白名单为准);按 maintainer 决定原样入库 - install.sh iw|ow:按角色建 .env -> 自检 -> sha256 校验 tar -> 架构 核对 -> docker load 后校验 tag -> 建目录/属主/SELinux 标签 -> 起栈 并逐个等健康。修掉 pipefail 下 `grep | head -1` 静默中断、架构字段 误读 manifest.json(实际在 Config blob)、die() 未定义先被调用 - export-images.sh:就地刷新 images/*.tar、sql、.env 的 tag 与 SHA256SUMS,再打 dist 交付盘;tar 与 SHA256SUMS 由 .gitignore 排除 - sql/01+02:从 backend/db 的 PG 全量与初始数据覆盖拷贝。三个 upgrade-*.sql 的 PG 段(x_upload_config、x_file_security)已在 init-table-postgres-full.sql 内,空库跑 01->02 即完整现状 - smoke_test.py:18 条断言的现场验收,凭证全部走环境变量 - 部署说明.md:拓扑、交付清单、出厂口令表、iw/ow 差异、验收清单、 13 条已知坑 镜像 tar 不进 git,装机包由 export-images.sh 出盘。
2026-11-02 20:40:16 +08:00
s-file 离线交付包 1.0.0
构建平台: linux/amd64
导出时间: 2026-11-02 13:58:00
镜像清单(sha256 见 images/SHA256SUMS.txt):
postgres.tar 161M "RepoTags":["postgres:18"]
rabbitmq.tar 84M "RepoTags":["rabbitmq:3.13-management-alpine"]
redis.tar 53M "RepoTags":["redis:8"]
sfile-app.tar 313M "RepoTags":["sfile-app:1.0.0"]
sfile-web.tar 39M "RepoTags":["sfile-web:1.0.0"]
SQL: sql/01-init-table.sql (93974 B) sql/02-init-data.sql (2791 B)
本包所含修复: 弹窗内容被长文件名撑破右边框(DialogContent grid 隐式轨道 min-content 撑开),
传输/分享确认框的被拦截文件清单由截断改为换行完整显示。
现场步骤(两台服务器各执行一次):
内网机 tar -xzf sfile-offline-1.0.0-linux-amd64.tar.gz && cd sfile-offline-1.0.0-linux-amd64
vi .env.iw # 至少改 MESHSAFE_SECRET,按需改口令/网段/目录
./scripts/install.sh iw
外网机 同上,改成 ./scripts/install.sh ow
验证 python3 scripts/smoke_test.py