gpt4 book ai didi

node.js - Codedeploy Application Start 卡在 pending using node 上

转载 作者:搜寻专家 更新时间:2023-10-31 23:04:45 25 4
gpt4 key购买 nike

您好,我刚开始使用 Code Deploy。我正在尝试启动 Node 应用程序。我的根目录中有 setup.sh、start.sh 和 app.js。

这是我的 appspec.yml 文件

version: 0.0
os: linux
files:
- source: /
destination: /
hooks:
Install:
- location: setup.sh
timeout: 3600
ApplicationStart:
- location: start.sh
timeout: 3600

设置.sh

yum -y install nodejs npm --enablerepo=epel
npm install

开始.sh

node /app.js

app.js(只是一个基本的虚拟服务器)

var express = require("express");
var app = express();

app.get("/",function(req,res) {
res.send("Hello world")
})


var server = app.listen(8080,function() {
console.log("Listening at " + server.address().address + ": " + server.address().port);
});

安装步骤成功完成,但 Code Deploy 在执行 ApplicationStart 步骤时卡在挂起状态。

我很确定这是因为 app.js 程序持续运行,那么 CodeDeploy 应该如何知道它正在运行并继续运行?

最佳答案

CodeDeploy 代理正在等待它启动的脚本返回退出代码并关闭 stdoutstderr。要在后台启动进程并将其与主机代理分离,以便它可以作为守护进程运行,请尝试:

node /app.js > /dev/null 2> /dev/null < /dev/null &

注意:您需要修改您的程序以写入日志文件而不是控制台,因为守护进程通常没有可写入的控制台(就像在这个版本中一样)。

请在此处查看官方文档:http://docs.aws.amazon.com/codedeploy/latest/userguide/troubleshooting.html#troubleshooting-long-running-processes

关于node.js - Codedeploy Application Start 卡在 pending using node 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32944933/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com