cjw
|
b934b737e8
|
🐛 fix(deploy): 修 unified backend 与 frontend 抢占宿主 10003 冲突
上一版把 frontend 与 backend 都映射 10003:8000,会触发 docker 启动时
"bind: address already in use"。修正:
- docker-compose.yml backend ports 改为 expose: ["8000"]——不映射宿主机,
仅在 docker 网络 gemold_network 内被 frontend 经 backend:8000 反代访问
- .env.example 删除 BACKEND_PORT 字段(不再需要)
- PORT_CONFIG / DEPLOY_PORT 端口映射表/示例同步:unified backend 不暴露
宿主机端口,统一经前端 /api 反代
验证:yaml 渲染后无任何 service 对抢宿主端口(unified 仅 frontend 暴露
$FRONTEND_PORT=10003;moldinsight-only 仅 moldinsight 暴露 10003;
inventory-only 仅 inventory 暴露 10004)。
Co-Authored-By: Claude Code <noreply@anthropic.com>
|
2026-09-26 20:56:20 +08:00 |
|
cjw
|
e65dcc2d39
|
🔧 build(deploy): 端口默认值统一 10003/10004——前端入口固定 10003
约定"容器内部端口无所谓,重要的是宿主机端口;前端 = 10003"。
- .env.example 端口段重写:移除冗余 HOST/PORT(uvicorn 命令硬编码,
无人读 env)+ 移除误导注释;FRONTEND_PORT/BACKEND_PORT/MOLDINSIGHT_PORT
默认 10003,INVENTORY_PORT 默认 10004
- docker-compose.yml frontend 默认 80→10003、backend 8000→10003,删除
backend service 内冗余 HOST/PORT env
- docker-compose.moldinsight.yml / docker-compose.inventory.yml 默认
端口同步
- DEPLOY_PORT §3 / PORT_CONFIG §1 §2 端口映射示例同步
- STATUS 补录
验证:yaml 渲染端口映射 unified frontend 10003→80、backend 10003→8000,
moldinsight 10003→8000,inventory 10004→8001。
Co-Authored-By: Claude Code <noreply@anthropic.com>
|
2026-09-26 20:45:38 +08:00 |
|
cjw
|
b03431b511
|
📝 docs(deploy): 明确裸 up 不重建已有镜像 + 修正 build.sh 三步描述
- DEPLOYMENT §1.2 / LINUX_SETUP §11 / README / OPERATIONS 补充:
docker compose up -d 对本地已有同名镜像不会自动重建,更新代码后
需 up -d --build 或先 build(部署机实测复用旧镜像后澄清)
- build.sh 描述由四步修正为 base → backend → frontend 三步(celery
复用 backend 镜像,随 Dockerfile.celery 移除的文档收尾)
Co-Authored-By: Claude Code <noreply@anthropic.com>
|
2026-09-24 17:05:01 +08:00 |
|
cjw
|
4373fafd55
|
🐛 fix(deploy): 移除服务 profiles——裸 up / 裸 -f 恢复一键可用
compose 规则:声明了 profiles 的服务在不带 --profile 时永远不会被选中。
拆分首版保留 profiles(双保险设计)导致部署机实测 docker compose up -d
与 -f <file> up -d 均报 "no service selected",与"一键部署、换文件名换
模式"的核心诉求互斥,故彻底移除:
- 三个 compose 文件的全部 services 去掉 profiles 块,模式切换唯一入口 = -f 文件名
- 历史 --profile full/moldinsight/inventory 写法随之失效(目标服务本就已
移出默认文件,兼容无意义);文档/构建脚本提示/STATUS 日志同步改为失效声明
- frontend/README 移除"仅起前端"用法(前端反代依赖 unified backend,推荐整栈)
Co-Authored-By: Claude Code <noreply@anthropic.com>
|
2026-09-24 16:09:26 +08:00 |
|
cjw
|
a548623ea5
|
📦 build(deploy): Compose 按部署模式拆分三文件——换文件名即换模式一键部署
- docker-compose.yml(unified 默认入口)/ docker-compose.moldinsight.yml / docker-compose.inventory.yml 三文件一一对应三种部署模式,profiles 字段保留(--profile 旧命令双保险可用)
- 修复两个既有部署隐患:moldinsight-only 场景 celery depends_on 悬空;moldinsight service image 统一为 gemold-backend:latest 与 Dockerfile.celery FROM 对齐(废弃 gemold-moldinsight tag)
- gemold_network / uploads_data / html_data 固定 name 命名;inventory-only 不声明卷避免空卷;每文件内 x-base-env anchor 收敛重复 environment(SECRET_KEY/ADMIN_PASSWORD fail-fast 保留)
- 文档同步 11 处:DEPLOYMENT §1.1 一键部署总表 + §2 三模式命令、LINUX_SETUP §6/§11、README、OPERATIONS §4、build.sh/.bat 提示、PORT_CONFIG / DEPLOY_PORT / STORAGE_SETUP / frontend/README
- STATUS.md 补 2026-09-24 批次日志
验证:三文件 YAML 结构静态校验通过;5 个 service environment 键与拆分前逐一比对零丢失(39/39、34/34、39/39、34/34、20/20)
Co-Authored-By: Claude Code <noreply@anthropic.com>
|
2026-09-24 15:28:13 +08:00 |
|
cjw
|
4fbff0761a
|
x
|
2026-09-02 18:18:42 +08:00 |
|
cjw
|
5e531ffe1e
|
文档目录结构简洁化
|
2026-09-01 18:05:18 +08:00 |
|
cjw
|
bee439cf34
|
x
|
2026-08-31 18:01:34 +08:00 |
|
cjw
|
3ea59551db
|
模块拆分 init
|
2026-08-27 14:53:22 +08:00 |
|
cjw
|
24b0ae8940
|
重构项目结构
|
2026-04-21 14:20:20 +08:00 |
|