如何处理 app.yaml 中的机密而不将其放入 GIT?

dou*_*_u1 6 ruby-on-rails environment-variables gcloud

Google Cloud Platform 没有描述如何处理app.yaml.

从 GCP 和 Google App Engine 开始,我阅读了关于设置我的配置变量的文章,app.yaml这在某种程度上是有意义的,但我不想将我的密码/机密/密钥/等放在我的 GIT 存储库中。

假定该@谷歌的工程师们足够聪明,不想要这个要么,我猜,最好的做法是把app.yaml.gitignore

执行gcloud app deploy结果是一个完美运行的应用程序。但这对我来说仍然是一个未完成的问题,我坚信应该在某处写一篇文章来描述最佳实践是什么。

有人可以确认:

  1. app.yaml.gitignore,然后,
  2. 设置我的秘密app.yaml,然后,
  3. 表演 gcloud app deploy

是要走的路吗?

小智 1

我建议您不要将配置放入app.yaml文件中,而是使用诸如配置服务器Spring Boot 示例之类的东西,这样您就可以轻松设置从 git、数据库或保管库(对于敏感数据)获取配置参数。您也可以考虑将参数存储appengine memcache在某些存储中,例如datastore.

目前,在我们的项目中,我们只是在部署之前在管道步骤之一中附加部分app.yamlenv_variables用于Teamcity构建,Vault用于存储秘密。Teamcity具有内置集成Vault功能。但我想在不久的将来将其更改为使用配置服务器。