diff --git a/src/main/java/com/yunhai/notice/service/impl/FileService.java b/src/main/java/com/yunhai/notice/service/impl/FileService.java index 08b4576..2b95e4c 100644 --- a/src/main/java/com/yunhai/notice/service/impl/FileService.java +++ b/src/main/java/com/yunhai/notice/service/impl/FileService.java @@ -55,10 +55,12 @@ public class FileService implements IFileService { /** * 附件存储根目录(生产容器内 /data/upload,对应 projman 卷 /data/uploads/notice)。 - * 优先级:环境变量 FILE_UPLOAD_PATH(子应用平台新标准,projman 注入)> file.upload-path - * (application.yml 的 D:/data/upload,仅本地 Windows 开发用)> /data/upload 兜底。 + * 优先级:属性 FILE_UPLOAD_PATH(子应用平台新标准,与其他子应用同款加在 + * application-prod.yml 顶层:FILE_UPLOAD_PATH: /data/upload;同名环境变量亦可) + * > file.upload-path(application.yml 的 D:/data/upload,仅本地 Windows 开发用) + * > /data/upload 兜底。 * 生产缺 FILE_UPLOAD_PATH 时曾回落到 D:/data/upload——Linux 下锚定为 /app/D:/data/upload - * 写进容器可写层,每次重新部署文件即丢(2026-10 事故),故 prod 必须注入该环境变量。 + * 写进容器可写层,每次重新部署文件即丢(2026-10 事故),故生产配置必须带该键。 */ @Value("${FILE_UPLOAD_PATH:${file.upload-path:/data/upload}}") private String uploadPath; diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 56922fb..4d30471 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -41,10 +41,10 @@ spring: simple: auto-startup: false -# 文件上传存储路径——仅供本地 Windows 开发兜底;生产以 projman 注入的环境变量 -# FILE_UPLOAD_PATH=/data/upload 为准(子应用平台新标准,卷 /data/uploads/notice 对应容器 /data/upload)。 -# 切勿在生产只依赖本键:历史教训是 Linux 容器把 D:/data/upload 锚定成 /app/D:/data/upload -# 写进容器可写层,每次更新部署附件全部丢失(2026-10)。 +# 文件上传存储路径——仅供本地 Windows 开发兜底;生产在 application-prod.yml 顶层加 +# FILE_UPLOAD_PATH: /data/upload(子应用平台新标准,与 flow-center 的 FILE_PATH 同玩法, +# 同名环境变量亦可),切勿在生产只依赖本键:历史教训是 Linux 容器把 D:/data/upload +# 锚定成 /app/D:/data/upload 写进容器可写层,每次更新部署附件全部丢失(2026-10)。 file: upload-path: D:/data/upload