节点配置自定义环境变量未选择 Docker 环境变量
Node-config custom-environment-variables not Picking Docker environment Variables
正在处理 Windows OS。
我使用节点配置的节点应用程序没有使用 docker 环境变量。它始终使用默认配置。
我正在使用此处所述的节点配置自定义环境变量:https://github.com/lorenwest/node-config/wiki/Environment-Variables#custom-environment-variables
当 运行 在本地应用程序时一切正常。配置通过默认配置并在设置时采用我的用户变量中定义的配置。
问题
- 我用所有必需的环境变量启动一个 docker 实例
设置。
- 我通过 运行
docker exec container_name env
验证环境变量
但是,节点应用程序仍然使用默认配置,而不是环境变量。
我不确定我可能缺少什么设置。
我是 node-config
的维护者。我没有使用 Docker 或 Heroku 进行测试,但这主要是一个排序问题。只要在 require('config')
发生之前设置环境变量,它们就会起作用——此时 Docker 或 Heroku 并不重要。此时 activity 发生在 Node.js JavaScript 引擎内部。
试试这个简单的测试:就在您 require('config')
所在的行之前,使用 console.log
或等价物打印出您关心的环境变量。我希望您会发现它不工作是因为在加载 node-config
之前未设置环境变量。
正在处理 Windows OS。
我使用节点配置的节点应用程序没有使用 docker 环境变量。它始终使用默认配置。
我正在使用此处所述的节点配置自定义环境变量:https://github.com/lorenwest/node-config/wiki/Environment-Variables#custom-environment-variables
当 运行 在本地应用程序时一切正常。配置通过默认配置并在设置时采用我的用户变量中定义的配置。
问题
- 我用所有必需的环境变量启动一个 docker 实例 设置。
- 我通过 运行
docker exec container_name env
验证环境变量
但是,节点应用程序仍然使用默认配置,而不是环境变量。
我不确定我可能缺少什么设置。
我是 node-config
的维护者。我没有使用 Docker 或 Heroku 进行测试,但这主要是一个排序问题。只要在 require('config')
发生之前设置环境变量,它们就会起作用——此时 Docker 或 Heroku 并不重要。此时 activity 发生在 Node.js JavaScript 引擎内部。
试试这个简单的测试:就在您 require('config')
所在的行之前,使用 console.log
或等价物打印出您关心的环境变量。我希望您会发现它不工作是因为在加载 node-config
之前未设置环境变量。