0

circleCI、AWS CodeDeploy、および EC2 が連携するようにセットアップしたので、コードを git にプッシュした後、circleCI に中継され、次に EC2 に中継され、そこでサーバーが起動されます。

サーバーが正常に動作していることと、circleCI が正常なビルド ステータスを表示しないことを除いて、すべて正常に動作しています。常に「実行中」の状態です

appspec.yml

version: 0.0
os: linux
files:
  - source: /
    destination: /home/ubuntu
permissions:
  - object: /home/ubuntu/scripts
    pattern: "**"
    mode: 777
    type:
      - file
hooks:
  ApplicationStart:
    - location: scripts/start.sh
      timeout: 3800

start.sh

#!/bin/bash
node server.js

誰もこれを解決する方法を知っていますか?

4

1 に答える 1

1

ホスト エージェントは、スクリプトが終了するのを待っています。ノードをデーモンとして実行する必要があります。

#!/bin/bash
node server.js > /var/log/my_node_log 2> /var/log/my_node_log < /dev/null &

http://docs.aws.amazon.com/codedeploy/latest/userguide/troubleshooting.html#troubleshooting-long-running-processesを参照してください

于 2015-10-30T14:03:25.000 に答える