部署到弹性 beantalk 时出错 - 未知作业:nodejs

Posted

技术标签:

【中文标题】部署到弹性 beantalk 时出错 - 未知作业:nodejs【英文标题】:Error deploying to elastic beanstalk - Unknown job: nodejs 【发布时间】:2016-12-04 15:54:58 【问题描述】:

我正在将流星项目部署到 beanstalk 应用程序,但收到错误消息:

Script /opt/elasticbeanstalk/hooks/appdeploy/enact/50start.sh 
failed with returncode 1

在 /var/log/directory-hooks-executor.log 我发现:

status: Unknown job: nodejs
Failed to find status of job.
Traceback (most recent call last):
File "/opt/elasticbeanstalk/containerfiles/ebnode.py", line 599, in <module>
main()
File "/opt/elasticbeanstalk/containerfiles/ebnode.py", line 583, in main
nodejs_upstart.start()
File "/opt/elasticbeanstalk/containerfiles/ebnode.py", line 199, in start
raise e
Exception: Failed to run command: None

我正在运行运行 Node.js 的 64 位 Amazon Linux 2014.03 v1.1.0 知道原因吗?

【问题讨论】:

【参考方案1】:

在我的例子中,当我将 Json 值作为 ENV 变量传递时产生了这个错误。

这是因为 Beanstalk 使用 "" 将所有环境变量存储在文件 /tmp/deployment/config/#etc#init#nodejs.conf 中。

例如:

METEOR_SETTINGS=' "public":   '

将在nodejs.conf中写为

METEOR_SETTINGS=" "public":   "

由于字符串没有正确闭合,会产生错误。

【讨论】:

以上是关于部署到弹性 beantalk 时出错 - 未知作业:nodejs的主要内容,如果未能解决你的问题,请参考以下文章

通过弹性 beantalk 部署的 Node 应用程序的问题

AWS弹性beantalk cron作业

第一个 git aws.push 到弹性 beantalk 时出错

第一个 git aws.push 到弹性 beantalk 时出错

升级弹性 beantalk 堆栈时,Rails 应用程序无法部署

尝试使用弹性 beantalk 安装 libjpeg-devel 时出错