Deploy Meteor.js app by running `mrt` or `meteor`

Problem

Why are Meteor.js apps not deployed by uploading to a server by doing the following:

  1. Install npm
  2. Install meteor $ curl https://install.meteor.com | /bin/sh
  3. meteor create myApp
  4. Upload Meteor code files from development system
  5. Deploy using meteor

And instead deployment guides are instructing us to convert Meteor apps into node.js modules using demeteorizer and manually installing Mongo etc which are much more tedious.

Problem courtesy of: Nyxynyx

Solution

meteor deploy will deploy your app on meteor's free hosting infrastructure. It's a cool way to show your app to the world, but it isn't intended for serious production use. That's why you'll find a lot of articles detailing how to deploy on your own infrastructure (essentially this is what goes on behind the scenes with meteor deploy). Yes, it's a lot more complicated, but that's expected with a little DIY.

People are using demeteorizer because most existing node.js PAAS solutions don't know how to run meteor apps. So, for example, if you want to run on nodejitsu you'd use demeteorizer to turn your app into a "standard" node.js application, as shown here.

In the future, MDG will be creating a platform known as galaxy which will be an easy-to-use production environment (kind of like heroku for meteor, but better).

Solution courtesy of: David Weldon

Discussion

There is currently no discussion for this recipe.

This recipe can be found in it's original form on Stack Over Flow.