优化日志记录并改用非 root 运行

This commit is contained in:
yml2213
2026-07-29 17:01:36 +08:00
parent e5309cdf23
commit c9d0803b53
10 changed files with 102 additions and 8 deletions
+13 -1
View File
@@ -36,8 +36,19 @@ MINIO_ROOT_USER
MINIO_ROOT_PASSWORD
STORAGE_ACCESS_KEY_ID
STORAGE_SECRET_ACCESS_KEY
BACKEND_UID
BACKEND_GID
```
`BACKEND_UID``BACKEND_GID` 填写服务器业务用户的数值 ID,例如:
```bash
id -u yml
id -g yml
```
后端容器会使用该 UID/GID 运行。部署脚本由 root 执行时会自动把已有日志修正为该属主;非 root 执行且发现旧的 root 日志时,会给出需要执行的 `chown` 命令后停止。
### 同机部署选号网(hfb_show,可选)
`backend/.env` 增加(域名不要带 `https://`):
@@ -76,6 +87,7 @@ HFB_SHOW_DIR=../hfb_show
- 检查 `backend/.env` 是否仍指向 `127.0.0.1``localhost` 或占位值。
- 使用内置 MinIO 时,检查 `STORAGE_ACCESS_KEY_ID` / `STORAGE_SECRET_ACCESS_KEY` 是否和 `MINIO_ROOT_USER` / `MINIO_ROOT_PASSWORD` 一致。
- 构建并启动生产容器。
- 使用配置的非 root UID/GID 运行后端,并检查日志目录属主。
- 通过 Caddy 自动申请或续签 HTTPS 证书。
- 等待 MySQL、Redis、MinIO 就绪。
- 按顺序执行尚未应用的数据库迁移。
@@ -87,7 +99,7 @@ HFB_SHOW_DIR=../hfb_show
./scripts/deploy-prod.sh --logs
```
后端运行日志会同时输出到 Docker 控制台,并写入宿主机:
后端运行日志会写入宿主机:
```text
backend/logs/app-YYYY-MM-DD.log