App Engine中用于本地开发的环境variables
在App Engine Flex环境的本地机器上开发nodejs时,设置环境variables的最佳方法是什么? 如果它们在app.yaml中设置,那么在本地开发期间它们不会被设置。 有没有办法强制这个,或者我应该使用类似dotenv的东西,并跟踪2个地方相同的环境variables?
敏感数据(例如API密钥)不应被提交给源代码。
我周围的方式是在Google Storage中存储.env
文件。 然后,您可以使用@google-cloud/storage
在生产环境下(使用预启动钩子)和dotenv将variables加载到内存中。
您可以在这里find完整的指南: http : //gunargessner.com/gcloud-env-vars/
PS:我会去Aidan的答案存储任何不敏感的数据。 过去我曾经dotenv
满意地使用了dotenv
。 与此类似, nconf是gcloud
自己使用的包例子 。 很简约!
选项1:
require('dotenv').config({path: '/custom/project/root/app.yaml'})
选项2:
保持.env文件和.yaml文件具有相同的键但不同的值(分别为本地和GAE)。 在app.yaml中,我确保不要通过添加以下行来部署我的.env文件:
skip_files : .env
您将需要添加('dotenv')。config()检查,以确保它没有错误或覆盖您的过程variables,如果没有.env文件被检测到。