【问题标题】:Settings.json to Heroku configSettings.json 到 Heroku 配置
【发布时间】:2018-06-04 11:27:41
【问题描述】:

我正在将 Meteor/Node 应用程序部署到 Heroku。我的 settings.json 中有以下几行(用于 OKGrow 分析)。

{
  "public": {
    "analyticsSettings": {
      "Google Analytics": {
        "trackingId": "12345"
      },
      "Segment.io": {
        "apiKey": "abcdef"
      }
    }
  }
}

但是,公司政策不允许我将 settings.json 检入源代码控制。有没有办法使用 Heroku 配置变量来完成这个?还有其他解决方案吗?

【问题讨论】:

    标签: json meteor heroku settings heroku-cli


    【解决方案1】:

    Herokurecommends configuring your application via environment variables:

    更好的解决方案是使用环境变量,并将键放在代码之外。在传统主机上或在本地工作,您可以在 bashrc 文件中设置环境变量。在 Heroku 上,您使用配置变量。

    幸好流星will load settings from the METEOR_SETTINGS environment variable

    直接运行您的服务器时(例如,从一个包中),您可以通过将 JSON 直接放入 METEOR_SETTINGS 环境变量来指定设置。如果设置对象包含名为public 的键,那么Meteor.settings.public 将在客户端和服务器上可用。 Meteor.settings 的所有其他属性仅在服务器上定义。即使没有指定设置,您也可以依赖 Meteor.settingsMeteor.settings.public 在客户端和服务器上作为已定义对象(不是未定义)。在运行时对Meteor.settings.public 的更改将被新的客户端连接获取。

    因此,只需设置应用的 METEOR_SETTINGS 环境变量,例如通过

    heroku config:set METEOR_SETTINGS="$(cat settings.json)"
    

    在您的开发机器上,或使用 Heroku 的 Web 界面。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-11
      • 2012-09-01
      • 2019-02-01
      • 1970-01-01
      • 2014-08-31
      • 2018-03-29
      • 2013-01-28
      • 1970-01-01
      相关资源
      最近更新 更多