How Can I Simplify My Cloud Setup While Maintaining Good Performance?

0
7
Asked By DevExplorer99 On

As a solo developer who's been diving into various technologies over the past year, I've reached the point where I need to host my web app and create a CI/CD pipeline. I picked AWS mainly because a friend who works in DevOps helps me out occasionally. However, as he is at a big startup, his advice isn't always tailored for my smaller applications. For continuous integration, I'm using GitHub Actions due to its easy integration.

My application is a multi-container setup consisting of a backend API, frontend, reverse proxy, and PostgreSQL database. Initially, I started with EC2, utilizing a single compose file for manual deployments. The database was also containerized with volumes for persistence, and I used Secrets Manager for the backend. However, server builds were slow, and establishing a proper CI/CD pipeline for multiple containers turned out to be more complicated than I'd expected. I've learned about ECS and ECR now, but the complexity is rising, making it challenging to focus on development instead of DevOps tasks.

I'm looking for advice on how to effectively compromise between simplicity and performance. I need a solution that is secure, easy to maintain, and stable enough to only require occasional attention since I'm not expecting heavy traffic—around 5 to 10 users at any time. Any suggestions would be appreciated!

3 Answers

Answered By CloudyDev22 On

For a small project like yours, you might want to keep it simple with just a single VM or a containerized service for your backend, along with a database for persistence. Anything more complicated could be overkill until you actually need it. That way, you can focus more on coding than managing infrastructure!

CoderKeeper44 -

How do you suggest deploying from GitHub? Should I build all the images and push them to a registry, or is it better to build them on the server when the repo updates?

Answered By SimpleStackGuy On

If you're looking for a low-maintenance solution, consider using ECS with Fargate. This way, you can deploy easily, without having to manage servers. Keep your PostgreSQL database on RDS instead of containerizing it to avoid additional overhead. If your CI builds become slow, there are build acceleration tools like Incredibuild that can help without making the setup too complicated. Focus on keeping things "boring but stable" so you have more time for coding!

Answered By SwitchItUp90 On

Honestly, if you’re finding AWS to be more complicated than it’s worth, you might want to explore alternatives like Railway, Hetzner, or Hostinger. They generally offer better pricing and a simpler setup. It could save you a headache!

DevExplorer99 -

I've invested quite a bit of time learning AWS. Do you think switching platforms now would still be beneficial?

Related Questions

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.