Deploying a Meteor app with Convox


#1

So Convox was recently brought to the limelight on HackerNews and I was taking a look at it tonight.

http://www.convox.com/


It’s built 100% open source, by three former Heroku engineer’s. They know their stuff. The idea of this project is to provide a heroku-like experience all hosted on AWS. Meaning you only pay for your AWS resources. Convox is free to use.

Has anyone here played around with it yet? It brings load balancing and all sorts of crazy stuff built right in.


To quickly see Convox deployment in action, you can clone one of our example apps.

$ git clone git@github.com:convox-examples/sinatra.git

Change into the sinatra directory and deploy the application.

$ cd sinatra
$ convox apps create
$ convox deploy

Deploying your app on Convox is easy. To deploy, simply run:

$ cd ~/myapp
$ convox apps create myapp
$ convox deploy --app myapp

The Convox Installer by default provisions an Elastic Load Balancer and 3 t2.small instances, giving you 6GB of memory capacity. This runs the Convox API and Private Registry, and leaves room for 10 512MB containers.

This configuration costs $85/month according to the AWS simple cost calculator.

Each deployed app will provision an additional ELB which starts at $18/month.

At any time you can uninstall Convox to delete the resources and stop accruing costs.


So what do you guys think? Can some of the heavyweights here give this a shot with Meteor and see if it’s good to go? How can we deploy Meteor apps with it?


#2

I have researched this a fair bit recently and it looks like a fairly robust platform. Convex are raising funding too so it should be well supported.

My main issue in a Meteor context is Websockets and Session Affinity.

Traditionally, ELB has not had Websocket support but it looks as if you can configure a TCP/TLS load balancer with Websocket support: https://convox.com/docs/load-balancers/

It is unclear at this point whether that configuration will support “sticky session” fallback when ws is not available.