使用生产代码部署configuration文件

在尝试将使用Git的Node.js服务器部署到Amazon Elastic Beanstalk实例时,我开始想知道,推送一个configuration文件并让它位于远程磁盘上是一种更安全/有效的做法。

我现在执行的一系列操作来获取生产代码如下:

  1. 在git上创build一个本地“生产”分支。
  2. 不要忽略我的config.js文件,其中包含敏感的数据库信息

    – 每次更新时重复以下步骤

  3. 混帐主混帐
  4. git aws.push(或者一些类似的'push'命令来更新上游文件)

这个stream程似乎很简单,但我想知道是否有一个更安全的方式,我的configuration文件不会存在于我的远程服务器的磁盘上,而是在内存中 – 如果服务器的敏感信息希望不再存在停止跑步。

在远程磁盘上不存在这个configuration文件的动机是,如果服务器被攻破,那么至less它将与数据库分开。

有没有解决这个问题的stream程,或者人们通常走设置环境variables的路线和/或使用新分支推送configuration文件?

任何有关这个问题的见解将不胜感激。

我是Platform-as-a-Service提供商的经常使用者,例如CloudFoundry,AppFog,Heroku等。而且AFAIK都使用envvariables来支持这种基本configuration。 envvariables可以通过API或客户端界面轻松设置或删除。