EDIT: With more research and the valuable input from this community I've reached a solution. I'll go with EBS and DocumentDB. Thank you all!!
I've been using AWS, especially EC2, Route 53... as a VPS, serving a few websites (I'm out of the year free tier) and playing with devOps to practice.
I could use help as to what AWS service to choose. I have a relatively simple application: it's a NodeJS + ExpressJS + MongoDB charity website, I estimate no more than 5k monthly visits. I'll be using a headless Node CMS for news and posts, and connect the frontend (nothing fancy, just maybe Jade/Pug) with it using ExpressJS.The site will grow a few sections and a couple of services to come (like fundraisers web support and so on), so I'm interested in a foolproof solution that I can git push after working locally and have it deploy online without hiccups.
I immediately thought on using Docker for a nice dev environment and no versioning/dependency issues. From AWS I'd like to have something easy to set up and monitor, managed, autoscaled, low maintenance and if it's affordable all the better! :) Microservices crossed my mind but if I can do without the added complexity, I'd prefer that: everything in the container, including MongoDB.
And here's where the doubts creep in. Most of what I've read (AWS docs, tutorials, youtube, posts...) only talk about ECS, which I think is an overkill for me. Multiple EC2 in a cluster with different availability zones using Fargate, ELB, ECR... I mean of course I don't want the site to go down but isn't there a simpler solution for a site like this?
After reading AWS' docs on Fargate, Elastic BeanStalk, ECS, etc. I'm a bit more lost than before. Using a container sounds comfortable but I'm not locked on it, if there's a better choice I'm all ears!
Can anyone help me figure this out?