Deploying on your own hardware recommendations

I have an unused Dell server (Xeon 2.8GHz 16 GB RAM no OS) at my disposal. My plan is to dedicate it to serving my upcoming production Meteor app. I’m looking at 2 approaches:

  1. Install Ubuntu server OS and use MUP.
  2. Install CoreOS and use MeteorD.

I have Windows server experience but only Linux desktop experience. I have to do everything myself. I’ll need SSL too. Any recommendations would really be appreciated. I’d like to hear what people have learned from trying to deploy on their own hardware.

Use Nginx to terminate SSL, meteor doesn’t need to concern itself with it.

Some people have had good experiences with MUP, but I never managed to get it working in a way that seemed okay for me. I myself use MeteorD images with dokku. I like the smooth transition between deployed versions, and the sanity checks before directing traffic at the new version, but there you have the issues of ungodly long build times.

My ideal solution would be building docker images on CI server, and having the same image progress throughout staging to production environments, but my docker-fu is too weak for that :frowning:

I’m deploying my apps to a Ubuntu 14.04 machine with MUP, I don’t have any problems with it. You can configure multiple servers in your MUP config and easy deploy your app automatically to each of them. There is also a newer version of MUP called MUPX which uses Docker. I recommend that demo config. You can also use SSL with it.

If you are at least somewhat used to cloud deployments, the best option would be to utilize that machine as a private cloud. That way, you could use docker containers as well as barebones vps’s hosted on that infrastructure as you need them.

I’d suggest you look at ubuntu openstack autopilot

I think Microsoft also pushes some line of Windows 2012 Server family for private clouds as well, but you’ll have to investigate that yourself.

Another option would be to sell that hardware and use the proceeds to fund an account on a cost-effective public cloud like digital ocean.

After all, you will be needing 1 cpu 512/1024MB ram virtualized linux instances to run your meteor app instances.

Thanks for all the great advice. Picking a deployment is as much of a rabbit hole as picking a framework. Docker looks like a great skill set to learn. It’s crazy how fast it is evolving.