How I Deployed Netflix Clone (NGold) to AWS EC2 - Live at 32.196.145.76:3000 [Docker + Nginx Guide]
I finally deployed my Netflix clone project NGold to AWS EC2!
After 3 failed attempts with permission errors and Nginx crashing, it's now LIVE at http://32.196.145.76:3000
Here's exactly how I did it for anyone trying to deploy a React frontend to EC2.
My Stack
- Frontend: React (from my GitHub: Sirvickcloud91/netflix-frontend-1)
- Server: AWS EC2 Ubuntu
- Tools: Docker, Nginx, Git
- Live IP: 32.196.145.76:3000
Step 1: Launch EC2 and Open Port 3000
Most beginners forget Security Group. You must allow inbound rule:
- Type: Custom TCP
- Port: 3000
- Source: 0.0.0.0/0
If you don't do this, your app will run but you won't see it in browser!
Step 2: Clone and Dockerize
On your EC2:
git clone https://github.com/Sirvickcloud91/netflix-frontend-1.git
cd netflix-frontend-1
docker build -t ngold-frontend .
docker run -d -p 3000:3000 ngold-frontend
Fix Nginx (My Biggest Headache)
Nginx kept showing 502 Bad Gateway. The fix:
sudo systemctl restart nginx
sudo nano /etc/nginx/sites-available/default
Change proxy_pass to http://localhost:3000;
Lessons Learnt
1. Always check `docker ps` - my container stopped 2 times silently.
2. AWS free tier is enough for this project.
3. That GitHub error "failed to push some refs" I fixed yesterday happened while pushing this same project!
Live Link: http://32.196.145.76:3000 (Check it before AWS stops my free tier!)
Next post: How I will add Kubernetes to this same project.
Questions? Drop in comments. I reply fast.
Read also: How I fixed "failed to push some refs" error while pushing this same NGold project to GitHub
This isn’t just a blog post, it’s a perspective shift. 🔥
ReplyDeleteThank you Anyiego001! 🙏 That means a lot. That's exactly why I started Sirvick DevOps Dairy — to document not just how I deployed NGold to 32.196.145.76:3000, but how I thought through the errors. From "some refs failed" to live on AWS EC2, it's a mindset. More perspective shifts coming! 🔥
ReplyDeleteYour explanation Simplifies the process. Kudos 👏
ReplyDelete