使用.gitignore中的settings.json从Github部署到Heroku

时间:2016-03-12 19:15:17

标签: security meteor heroku github settings

由于Meteor free hosting即将消失,我尝试将其中一个应用部署到Heroku。使用Github存储库进行部署似乎是一种很好的做法。

出于安全原因,我的settings.json位于.gitignore内,并且未被推送到我的Github回购。

这并没有给Meteor托管带来任何问题,因为meteor deploy --settings settings.json使用了本地文件。

现在,Heroku存在问题。即使使用heroku config:set METEOR_SETTINGS="$(cat settings.json)"也无法正常工作,因为它无法识别设置文件。

这种方法有问题吗?即使集成处于活动状态,我是否必须将settings.json直接推送到Heroku?如果是这样,我该怎么做?

1 个答案:

答案 0 :(得分:1)

Heroku解决此问题的方法基于他们的12factor App配置原则(请参阅以“环境变量中的十二因素应用商店配置”开头的段落)。所以这样做的方法是将配置从settings.json移动到配置变量。这将是一个例子:

heroku config:set MY_VAR=myValue MY_VAR2=myOtherValue -a myApp

看起来OP已经知道这种方法,他只需要为settings.json中的每个键值对取得它。这种方法的好处是,如果您将更多人带入项目,您不必找到安全传输此信息的方法;授权用户可以使用heroku config -a myApp获得所需的信用。您也可以访问heroku dashboard并通过网络界面添加设置,如果这对您来说更容易。