You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows10下AWS Elastic Beanstalk部署.sh钩子权限被拒如何解决

问题解决步骤
  • 修正Git权限标记
    你之前执行的git update-index缺少必要参数,Windows环境下Git默认关闭Unix文件权限识别,就算在WSL中修改了本地文件权限,提交时也不会被Git记录。修改完本地文件权限后,执行以下命令强制Git保留可执行权限标记:
chmod +x .platform/hooks/postdeploy/01_runsomething.sh
git update-index --chmod=+x .platform/hooks/postdeploy/01_runsomething.sh

执行git status确认文件有变更,提交修改后再重新部署。

  • 修正Shell脚本语法错误
    你当前的01_runsomething.sh的shebang行写法不规范,shebang仅能指定脚本解释器,不能直接拼接执行命令,修改脚本内容为:
#!/bin/sh
python3 /var/app/current/print_helloworld.py

这里使用python3避免环境中Python别名异常,写入绝对路径/var/app/current/是AWS Elastic Beanstalk Python平台的默认代码部署目录,避免脚本执行时找不到目标Python文件。

  • 确认打包部署规则
    如果你是使用EB CLI本地打包部署而非Git推送部署,不要在Windows原生系统中修改、复制该shell文件,避免WSL下设置的权限属性被覆盖,打包前可在WSL中再次确认文件权限正常。

如果你的需求是定期执行脚本而非仅部署后执行一次,仅配置postdeploy钩子无法实现,需要额外在.platform目录下添加cron定时任务配置。

内容的提问来源于stack exchange,提问作者Patrick DLR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 21:36:03