在Windows上部署Meteor

时间:2015-11-20 14:35:38

标签: windows meteor windows-server-2012 windows-server windows-server-2012-r2

我觉得很奇怪,没有详细的逐步解释如何将自己的Meteor webapp部署到自己的Windows服务器上。 或者我可能无法使用Google找到这样的解释。

在很多页面上,即使是关于SO的一些问题,我发现人们只是说“build it and deploy it like any other node.js app”这很好,除了我找不到任何有关如何将node.js webapp部署到的解释Windows服务器。

Meteor非常棒,我觉得如果有人会在如何在Windows服务器上部署Meteor应用程序上逐步编写这样的话,那么人们就会非常开心。 ..特别是如果解释说明如何将多个Meteor应用程序部署到一台Windows服务器上;)

当然不一定是IIS,nginx runs on Windows就好了。

另外,Node.js runs on Windows就好了。 MongoDB runs on Windows就好了,作为一项服务。 Meteor在Windows上构建应用程序显然很好。因此,它确实缺少将其部署在Windows服务器上的最后一步......

那么,那里的任何人都知道如何在一台Windows服务器上部署多个Meteor应用程序,并且愿意为此逐步解释 n00b友好吗?

非常好吗?

2 个答案:

答案 0 :(得分:6)

Predrag - 我开始写下我希望这将是一个相当合理的流星论坛分步指南: Windows Deployment

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

同时,对于那些不需要分步指南的人来说,这是基本步骤:

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

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

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

这是关键部分。最后一个命令将尝试构建Fibers ..因此请确保可以找到并运行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。我把它放在上面,但它是可选的。

无论如何,这是基础知识。有关详细信息,请阅读上面链接的指南(这是一项正在进行的工作)。

答案 1 :(得分:0)

好吧,他们关于custom deployment的页面很短,我在管理部署欢迎使用Meteor应用程序时发现了一些事实:

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

希望得到这个帮助。

相关问题