AWS Code Deploy appspec 没有启动我的服务器

AWS Code Deploy appspec isn't starting my server

所以我正在使用 AWS 代码部署...代码可以很好地连接到服务器,我可以看到一切都在需要的地方。我的 appspec.yml 看起来像这样:

version: 0.0
os: linux
files:
  - source: ./
    destination: /dmi
hooks:
  ApplicationStart:
    - location: scripts/start_server.sh
      timeout: 500
      runas: root

很基础。问题是 CodeDeploy 似乎永远不会执行 scripts/start_server.sh

那个文件看起来像这样:

java -jar ../*.jar

如果我 ssh 进入那台机器并手动 运行 ./scripts/start_server.sh 它 运行 没问题。那么为什么代码部署不执行 start_server.sh?

在我的 scripts/start_server.sh 脚本中,我发现我必须重定向 stdinstdout 后台任务:

/var/myservice/scripts/run > /dev/null 2> /dev/null < /dev/null &

否则启动似乎挂起。