16

我有一个设置为运行 shell 脚本的 Procfile 应用程序,但 Heroku 不会运行该脚本,并显示“权限被拒绝”。

档案:
web: ./start.sh
开始.sh:
#!/usr/bin/env bash
clear;
until node app.js; do
    echo "Server crashed with exit code $?.  Respawning.." >&2
    sleep 1
done
Heroku 日志:

使用命令 './start.sh'
bash 启动进程:./start.sh: Permission denied
状态从开始更改为崩溃
进程退出,状态为 126

4

1 回答 1

25

为此,start.sh必须是可执行的:

chmod a+x start.sh

如果您无法安排在运行文件的机器上发生这种情况,您可以直接使用 bash 调用它;而不是./start.sh,使用bash ./start.sh(甚至只是bash start.sh

于 2015-02-14T04:38:28.937 回答