1

だから私はAWS Code deployを使用しています...コードはサーバーに問題なく送信され、すべてが必要な場所にあることがわかります。私の 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 を実行しないのはなぜでしょうか?

4

1 に答える 1

4

私のスクリプトでは、タスクscripts/start_server.shをリダイレクトstdinstdout てバックグラウンドにする必要があることがわかりました。

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

そうしないと、起動がハングしたように見えました。

于 2015-08-19T02:37:14.220 に答える