Ale*_*zzi 3 google-app-engine environment-variables
我注意到开发人员控制台似乎没有公开我可以配置静态环境变量的任何地方.
是否期望GAE我将这些变量作为部署的一部分从我的构建服务器中捆绑出来?如果是这样,是否有关于GAE/Google Cloud的文档涵盖了为什么或详细说明了这一理念?
几年过去了,还是不行。
我的解决方法是在部署过程中(本地或使用 CI)编译 app.yaml。例如,我有一个模板文件 app.tml.yaml 文件
runtime: python37
handlers:
- url: /static
static_dir: app/static/
- url: /.*
script: auto
env_variables:
DJANGO_GC_DATABASE_PASSWORD: ${DJANGO_GC_DATABASE_PASSWORD}
Run Code Online (Sandbox Code Playgroud)
然后我在部署之前envsubst < ./app.tml.yaml > app.yaml和之后gcloud app deploy像往常一样调用 envsubst
。部署完成后,带有敏感数据的 app.yaml 将被删除。变量从本地 .env 文件读取或在 CI 系统中设置。
我在这篇文章中还发现了其他方法:https : //dev.to/mungell/google-cloud-app-engine-environment-variables-5990但对我来说它们不够方便或通用。
可以在应用程序中定义环境变量 app.yaml
python/php /(也许是go?)应用程序的一个例子.Java使用不同的格式.
env_variables:
MY_ENV_VAR: 'some value here'
Run Code Online (Sandbox Code Playgroud)
您可以在CI过程中设置这些值,如果您需要在部署之前以编程方式将它们附加到app.yaml.
| 归档时间: |
|
| 查看次数: |
3941 次 |
| 最近记录: |