circleci无法在成功的服务器启动时完成构建

时间:2015-10-30 09:49:05

标签: amazon-ec2 circleci aws-code-deploy

我已经设置了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

任何人都知道如何解决这个问题?

1 个答案:

答案 0 :(得分: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