在Windows上部署Meteor

我觉得很奇怪,没有详细的一步一步解释如何将自己的Meteor webapp部署到你自己的Windows服务器上。 或者,也许我只是不能使用Google来find一个这样的解释。

在许多页面上,即使在这里的一些问题上,我发现人们只是简单地说“ build it and deploy it like any other node.js app ”,除非我找不到关于如何部署节点的任何解释。 JS Web应用程序到Windows服务器上。

meteor是如此的真棒 ,我觉得如果有人会这样一步一步地写下如何在Windows服务器上部署Meteor应用程序,那么一群人将是非常快乐的露营者…尤其是如果解释说明如何部署将多个Meteor应用程序放到一个Windows服务器上;)

它当然不一定是IIS, nginx运行在Windows上就好了。

此外, Node.js在Windows上运行就好了。 作为一项服务, MongoDB在Windows上运行得很好。 Meteor在Windows上构build应用程序显然很好。 所以,它实际上只是最后一步将其部署在Windows服务器上,以及…

那么,那里的任何人都知道如何在一个Windows服务器上部署几个Meteor应用程序,并愿意写出一个友好的步骤解释这个?

请好吗?

Predrag – 我开始写下我希望在这里的流星论坛上的一个相当合理的分步指南: Windows部署 。

希望在接下来的几天我会完成它,但这是一个开始!

同时这里是那些不需要一步一步的指导的基本步骤:

  • 在某些Windows机器上(如果您正在Windows上开发,当然可以是您的开发机器),请确保安装了以下内容:

    1. 流星
    2. VS12(VS15也许能够工作,但我使用VS12)与安装的C ++命令行构建工具!
    3. 节点(如果你很棘手的话可以和Meteor中嵌入的节点相同),否则任何节点都应该工作
    4. NPM
    5. demeteorizer(npm install -g demeteorizer)
  • 然后从你的Meteor项目运行以下内容:

     demeteorizer -oc:\somepath cd c:\somepath\bundle\programs\server npm install 

这是关键部分。 最后一个命令将试图建立光纤..所以确保VS命令行工具可以被发现和工作。

如果以上的工作,你几乎在家!

运行运行应用程序 – 除了我们需要定义(至少)两个环境变量(下面的前两个)之外,它与任何其他节点应用程序非常相似。 我通过一个.bat文件来做到这一点,但是任何相当于应该能够工作。 如果你想阅读关于它们的信息,那么ENV变量是在BTW上面的bundle目录下的README文件中定义的。

 set MONGO_URL=mongodb://localhost:27017/mydbname set ROOT_URL=http://myapp.example.com:8080 set PORT=8080 set MAIL_URL=smtp://user:password@host:port node main.js 

现在,上面假设了许多简单的事情,即在默认端口上,您正在本地机器上运行MongoDB,没有用户安全性。 如果没有,您需要更改MONGO_URL部分以反映现实。 “mydbname”是你想调用你的文档集合的任何逻辑名称。 在开发模式中,这是“流星”,但在生产中不太可能有意义(特别是如果它不符合真正的生产数据库!)。 这也假定没有Oplog Tailing。

我喜欢在.bat文件中显式指定PORT,所以很明显,除非你想使用3000(或者80–不管默认值是什么,我不记得)。

如果您正在使用任何包含电子邮件通知的用户包,则可能还需要设置MAIL_URL。我把它放在上面,但是它是可选的。

无论如何,这是基本的。 欲了解更多详情,请阅读上面链接的指南(这是一个正在进行的工作)。

那么,他们关于自定义部署的页面很短,我在管理部署“欢迎来到流星”应用程序时发现了一些事实:

  • ROOT_URL环境变量是必需的,但似乎里面的端口号是没有意义的。
  • 端口号由PORT环境变量定义或由节点分配。 本指南中未提及此PORT变量。 我用netstat命令找出使用的端口。
  • 在这个应用程序中,MONGO_URL环境变量是可选的。
  • 在执行meteor build之前必须运行npm install

希望这个帮助。