DEV Community

Duru Juliet Chinenye
Duru Juliet Chinenye

Posted on

Deployment of a Static Website on AWS EC2 Using Docker

This week, I took a major step forward in my DevOps journey. I deployed a fully live static website to the internet using AWS EC2, Docker, and Nginx. Seeing my work accessible at http://35.176.161.171 was a proud moment.

I built the entire setup from scratch:
• Launched an Ubuntu 22.04 EC2 instance
• Configured Security Groups for SSH (22) and HTTP (80)
• Automated server setup using cloud-init (User Data)
• Installed and configured Docker
• Cloned a static website from GitHub
• Wrote a custom Docker file using Nginx, Alpine
• Built the Docker image and ran the container on port 80
• Accessed the live site from the browser fully deployed and running

This project helped me deepen my understanding of real DevOps workflows:
• How cloud-init automates provisioning at boot
• The difference between a Docker image and a container
• How to write a Docker file and serve static files with Nginx
• How to troubleshoot real-world issues like port conflicts and container name clashes
• How Docker, Nginx, and cloud infrastructure integrate in a practical DevOps pipeline

Tech Stack
AWS EC2 | Ubuntu 22.04 | Docker | Nginx | cloud-init | GitHub
Each issue forced me to slow down, read the error, understand the root cause, and fix it. That’s the real DevOps mindset: build, break, debug, learn, repeat.

I want to sincerely thank my mentors, Pravin Mishra, Praveen Pandey, Abhishek Makwana, Mobarak Hosen, Onuche Paul and Nkechi Anna Ahanonye

DevOps #AWS #Docker #Nginx #CloudComputing #EC2 #Linux #DMI #LearningInPublic #CloudEngineer #Containers




Top comments (0)