如何让节点应用程序在Google Cloud上看到系统变量?

时间:2019-02-21 14:24:19

标签: node.js google-cloud-platform

.bash_rc文件中设置了变量:

whoami@cloudshell:~/source/NodePrototype (x-alcove-9999999)$ echo $APP_ENVIRONMENT
LIVE

还没有使用node.js应用程序:

const app_environment_config=require('./APP_ENVIRONMENT/' + process.env.APP_ENVIRONMENT)

生产

2019-02-21 14:18:16 default[20190221t141628]  Error: Cannot find module './APP_ENVIRONMENT/undefined'

当我进入节点外壳时会出现事件:

whoami@cloudshell:~/source/NodePrototype (x-alcove-9999999)$ node
> process.env.APP_ENVIRONMENT
'LIVE'

同一部分在本地有效。

1 个答案:

答案 0 :(得分:0)

这取决于您的Node应用程序的启动方式,因为看起来好像不是在该变量存在的环境中运行,请确保打印所有当前的环境变量以确保:console.log(process.env)

另外,一种好的做法是,当您需要类似的内容时,请在此模块中使用.env个文件:https://www.npmjs.com/package/dotenv是将配置传递给Node应用程序的一种好的做法。