Heroku:“bash:./start.sh:权限被拒绝”
我有一个Procfile应用程序设置为运行一个shell脚本,但Heroku不会运行该脚本,指出“权限被拒绝”。
Procfile:
web: ./start.sh
start.sh:
#!/usr/bin/env bash clear; until node app.js; do echo "Server crashed with exit code $?. Respawning.." >&2 sleep 1 done
Heroku日志:
Starting process with command './start.sh' bash: ./start.sh: Permission denied State changed from starting to crashed Process exited with status 126
要做到这一点, start.sh
必须是可执行的:
chmod a+x start.sh
如果你无法安排在文件运行的机器上发生这种情况,你可以直接用bash调用它。 而不是./start.sh
,使用bash ./start.sh
(甚至只是bash start.sh
)