fix(deploy): pass S3 chunked encoding setting

Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com>
This commit is contained in:
XiaoSeS 2026-09-21 14:15:42 +08:00
parent 3381cc128e
commit bc5151b142
3 changed files with 16 additions and 1 deletions

View file

@ -87,6 +87,7 @@ services:
SKILLHUB_STORAGE_S3_SECRET_KEY: ${SKILLHUB_STORAGE_S3_SECRET_KEY:-}
SKILLHUB_STORAGE_S3_REGION: ${SKILLHUB_STORAGE_S3_REGION:-us-east-1}
SKILLHUB_STORAGE_S3_FORCE_PATH_STYLE: ${SKILLHUB_STORAGE_S3_FORCE_PATH_STYLE:-false}
SKILLHUB_STORAGE_S3_DISABLE_CHUNKED_ENCODING: ${SKILLHUB_STORAGE_S3_DISABLE_CHUNKED_ENCODING:-false}
SKILLHUB_STORAGE_S3_AUTO_CREATE_BUCKET: ${SKILLHUB_STORAGE_S3_AUTO_CREATE_BUCKET:-false}
SKILLHUB_STORAGE_S3_PRESIGN_EXPIRY: ${SKILLHUB_STORAGE_S3_PRESIGN_EXPIRY:-PT10M}
SKILLHUB_SECURITY_SCANNER_ENABLED: ${SKILLHUB_SECURITY_SCANNER_ENABLED:-true}

View file

@ -163,7 +163,8 @@ Sentinel 配置优先于 Cluster 和单机 `host`/`port`。在 Kubernetes 等 Se
- 使用发布镜像,不在用户机器上执行本地构建
- 负责拉起 PostgreSQL、Redis、server、web
- PostgreSQL、Redis 默认只绑定到 `127.0.0.1`
- Web 和后端都支持运行时环境变量注入,不需要为每个环境重建镜像
- Web 和后端都支持运行时环境变量注入不需要为每个环境重建镜像S3/OSS 的
`SKILLHUB_STORAGE_S3_*` 变量会透传到 server
- `.env.release.example`
- 运行时变量模板
- 包含镜像名、镜像版本、端口、数据库凭证、外部 OSS、站点公网地址和首登管理员参数
@ -171,6 +172,18 @@ Sentinel 配置优先于 Cluster 和单机 `host`/`port`。在 Kubernetes 等 Se
- 在启动前校验 `.env.release`
- 可提前拦截占位值、URL 格式错误、缺失的 OSS 凭据、危险的明文默认值
阿里云 OSS 等不支持 AWS chunked encoding 的对象存储,需要在 `.env.release` 中设置:
```dotenv
SKILLHUB_STORAGE_S3_DISABLE_CHUNKED_ENCODING=true
```
该变量由 `compose.release.yml` 透传到 server修改后需要重新创建 server 容器:
```bash
docker compose --env-file .env.release -f compose.release.yml up -d --force-recreate server
```
### 5.5 镜像标签约定
- `edge`

View file

@ -68,6 +68,7 @@ tmp="$(new_tmp)"
valid_env="$tmp/valid.env"
write_env "$valid_env" "release-download-secret-32-bytes-minimum"
printf '%s\n' "SKILLHUB_STORAGE_S3_DISABLE_CHUNKED_ENCODING=true" >>"$valid_env"
"$SCRIPT" "$valid_env" >/dev/null
valid_feishu_env="$tmp/valid-feishu.env"