【问题标题】:Running Meteor Build under Node with settings argument使用设置参数在 Node 下运行 Meteor Build
【发布时间】:2016-12-24 05:53:59
【问题描述】:

通常在开发时我会使用meteor run --settings settings.json。这工作正常,可以在控制台上用Meteor.settings查看浏览器中的设置。

我现在正在为生产构建,使用meteor build,我查看了文档,在构建过程中无处添加settings

所以构建运行并且我有我的.tar.gz 文件,它被加载到生产中,然后我解压缩/压缩文件夹并运行启动脚本。

它以npm start 进入程序,package.json 部分如下所示(忽略停止脚本);

{
  "name": "myapp",
  "scripts": {
    "start": "node main.js --settings settings.json",
    "stop": "killall node"
  }
}

当我查看我的应用时,它没有收集这些设置。就好像捆绑在一起时不会出现争论。我也尝试过使用forever,但我对此也不满意。

任何帮助将不胜感激,开始希望我永远不会打扰 Meteor :)

【问题讨论】:

    标签: node.js meteor arguments parameter-passing


    【解决方案1】:

    可以参考Meteor Guide > Production > Deployment and Monitoring > Environment variables and Settings

    设置。这些是通过--settings Meteor 命令行标志或字符串化到METEOR_SETTINGS 环境变量设置的JSON 对象。

    至于设置环境变量,如果您使用第三方主机,您可能有 GUI 或 CLI 来定义它们。

    否则,您应该有足够的资源,包括 SO:

    简而言之,它应该是这样的:

    METEOR_SETTINGS='{"key":"value"}' node main.js
    

    您也可以尝试使用 bash cat 命令提取文件内容:$(cat settings.json)

    【讨论】:

    • 太棒了!他们需要在节点之前去吗? (我只是在看 cat 选项)
    • 当你在这里做的时候,你不会碰巧知道我怎么能永远做到这一点:)
    • 作为记录,刚刚在 Docs 上找到了该示例:stackoverflow.com/documentation/meteor/4198/…(但不确定它是否在适当的主题中)
    • @ghybs 经过这么多年,我仍然支持旧的流星应用程序,并希望在应用程序转换为节点后查看流星设置的示例。 SO 文档已被停用,因此我看不到您引用的示例。你有机会把它贴在这里/某处吗?
    • 嗨@Aaron,除了上述答案中发布的内容之外,不确定您还需要什么?我确实有一些 Meteor 应用程序,并且仍然使用上述技术没有任何问题:METEOR_SETTINGS="$(cat /path/to/settingsProd.json)" node main.js(在 linux 中)。
    猜你喜欢
    • 2016-11-26
    • 2010-12-17
    • 2018-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-15
    • 1970-01-01
    相关资源
    最近更新 更多