Easily deploy Meteor JS apps in your own AWS account

As some of you may know waveshosting.com is now down. Im working on bringing it back with updates and improvements.

If you dont know what was waveshosting, it was a platform where you could manage your AWS account and easily setup/deploy Meteor apps.

I already have improved the following:

  • Works with latest AWS platform
  • Works with meteor versions 2.13+ (using the latest official node version 14.21.3 for now :grimacing:)
  • Supports custom eb hooks
  • Improved the health checks
  • Improved the cli
  • Uses nginx as proxy
  • Request logs tail
  • App is now a PWA
  • Create/update route53 record for your enrironment

Im thinking about doing the following features:

  • Atlas VPC peering setup
  • Setup SES email queue with rate limits and events handling (bounce, delivered, open, clicked, etc)
  • Deploy a basic MongoDB server (for test envs)
  • Push to deploy

Why am I doing this?
We were already using waveshosting and it made easier some tasks, we switched to mup-aws-beanstalk but somethings were broken and doing simple updates like changing instance count needed a reconfig and to me to be in front of my computer.

With this tool you can update settings, env vars, deploy/rollback versions to environments, change instance count, restart instances, basic monitoring, logs download and more, from the phone.

If anyone is interested in trying it let me know.

6 Likes

That’s great news Paulo. We were also waves users until it got discontinued and we also switched to mup-aws-beanstalk. I had never tried waves on my mobile but that sounds great. We don’t use Route53 or SES, but setting up the peering with Atlas would be really cool, as well having the mongod for tests. And if you’ve got logs working nicely that would also be a big plus as something happened in v2 of AWS platform with the logger and it breaks json into multiple separate lines.

Are you planning on starting up the platform again as a commercial venture ?

Anyway, we’d be delighted to help test it out :+1:

1 Like

Well regarding the logs, for now I just added log tailing which returns last 100 lines of the logs. I didn’t use log streaming, but will take a look maybe it has an easy fix.

I’ll be working on MongoDB instances setup next week.

I’m not sure if I will do this as a business, for now it’s just a fun tool to make my life easier. So for now it’s going to be free, but if there is an interest in this things could change.

You can have a look at https://www.miawhost.com

If you have any issue or feature idea let me know.

2 Likes

For me an interesting feature to have would be integration with tailscale. A possibility to smoothly deploy a Meteor app into an internal tailscale network so that it is accessible only over VPN. It seems to me that Meteor is a great tool especially for internal apps for companies. Such apps usually are used by a limited number of users (e.g. employees of a company), so you can really make good use of the real time capabilities of Meteor without worrying too much about scalability issues. And these clients usually tend to have money as well. However, such apps are often very sensitive to security. And setting up a reliable VPN environment requires some devops chops. Tailscale seems to solve many of the painpoints of managing a VPN network. But the process of deploying a Meteor app into a tailscale network probably is not a very smooth process if done manually for now. I have not looked into it myself yet, but in general such deployment would mean deploying the app into a VPC and then having a single EC2 instance with tailscale on it acting as an entry point into the VPC:

Sounds interesting, but for the moment is something that will not help me in my projects. Nonetheless ill have it in mind for when I have some spare time to check it out.

I had such performances when I was running on wavehosting but I had to move to galaxy for better support, sounds promising

What kind of support have you required mainly? I would like to know what can be done to help users of the platform.