I am aware, that there are some other threads out there regarding this combination, but most of them a pretty old and I just want to check the current situation, before I throw myself into the AWS world.
One Big DigitialOcean Droplet running my main app and mongo. This droplet has 8GB of RAM and 4 CPUs - so should be kinda okay. Thing is, that we are expecting a soon-to-come pretty substantial user bump and thus way more load.
–> I am thinking of switching to AWS with Elastic Beanstalk, as I really want something which properly autoscales.
I am currently already using
mup and I am aware, that there is a plugin out there: https://github.com/zodern/mup-aws-beanstalk
BUT: I also read, that the deployment times are pretty bad - some say around 45mins. This is not really acceptable for me.
Then I also found some blogposts out there like this one: https://blog.416serg.me/step-by-step-guide-to-deploy-a-meteor-application-to-aws-elastic-beanstalk-in-production-1bd899bbf3f9
Again, this blog post is pretty outdated, uses a couple of “ugly” workarounds and all that.
So I guess my question is: is AWS Elastic Beanstalk suitable for meteor? If yes, which method of deployment do you recommend? I really need something which works reliably and as fast as possible!
I also already thought of doing the following:
- Create/define a “base image” for my EC2 instances which run in my Elastic Beanstalk, which already has everything installed it needs except my meteor app itself
- create a simple build script, which builds my app and uploads the bundle.tar.gz file to AWS S3
- find some way (I am totally new to AWS!) to tell Elastic Beanstalk to begin updating my EC2 instances from this new bundle I just uploaded one by one
- if EBS needs to scale up, just spin up a new instance from my base image, load the current bundle from AWS, unpack,
npm installand go.
I really need some way which does not stop my main development Mac for like 45mins, because it needs to
Thanks for your input in advance,