0

我使用 Amazon OpsWorks 为 NodeJS 应用程序服务器配置了一个堆栈。

我需要访问一些定义 Google API 凭据的环境变量。我怎样才能做到这一点?我已经在这上面花了两天时间。

我最终得到了以下厨师食谱:

magic_shell_environment "GOOGLE_CLIENT_ID" do
    owner 'root'
    group 'root'
    value "********"
    mode  '0600'
end

我使用 root 帐户,因为 NodeJS 似乎是在该帐户下运行的。如果我删除ownerandgroup属性,我可以很好地读取这些环境变量(作为默认ubuntu用户)。但是,当我 ssh 到我的实例并echo $GOOGLE_CLIENT_ID以 root 身份键入时,我得到一个空字符串。

此外,在哪里记录的输出console.xxxx(...)

4

3 回答 3

1

OpsWorks 现在允许您在应用程序设置页面中指定多达 20 个自定义环境变量。对于 node.js 应用程序,这些将在 process.env 对象中可用。 在此处输入图像描述

于 2014-12-08T13:59:12.430 回答
0

使用OpsWorksEnvy食谱。它很好地连接到默认的 nodejs 食谱中,并允许您在堆栈属性中设置环境变量。

于 2014-07-09T21:29:28.717 回答
0

这应该很容易做到。只需将以下行添加到食谱的顶部。

ENV['GOOGLE_CLIENT_ID']="YOUR_CLIENT_ID"
于 2014-07-13T18:13:42.593 回答