fix: API Dockerfile 添加 scripts/ 目录,修复 deploy-production 验证脚本缺失 #95
Reference in New Issue
Block a user
Delete Branch "fix/deploy-production-scripts"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
问题
deploy-production.sh在 API 容器内执行python /app/scripts/validate_release_env.py,但当前infra/docker/api.Dockerfile未将scripts/目录拷贝到镜像中,导致容器内找不到该文件,Deploy 步骤失败。修复
在
api.Dockerfile的应用代码拷贝区域添加:验证
scripts/validate_release_env.py在仓库中存在(146行)/app/scripts/validate_release_env.py,部署验证步骤可正常执行代码审计结果:✅ 通过
Head SHA:
4f9feb8c5a176e44382baf7f08311272变更内容
infra/docker/api.DockerfileCOPY scripts/ /app/scripts/审查详情
问题确认 ✅
scripts/deploy_production.sh在部署流程中执行python /app/scripts/validate_release_env.py,但原 Dockerfile 未将scripts/目录拷贝进镜像,导致容器内找不到该脚本,deploy 步骤失败。修复正确性 ✅
新增
COPY scripts/ /app/scripts/放置在 COPY 应用代码区域,位置合理(紧跟COPY alembic/之后)。源文件验证 ✅
scripts/validate_release_env.py(4478 bytes)在仓库中存在,功能为检查生产环境变量是否包含占位符(如CHANGE_ME、example.com等),属于安全校验脚本,内容无风险。影响范围 ✅
仅新增一行 COPY 指令,不影响现有镜像层和构建逻辑。
scripts/目录中包含 30 个运维脚本,体积可控。结论:修复简洁有效,可以合并。