I was tasked with deploying a live web application—the initial step in testing real-world DevOps competencies. The objective: provision a cloud-based NGINX web server, serve a custom webpage, and ensure reliable public access for evaluation.
Challenge & Constraints
-
Cloud Agility: I needed to choose between cloud providers; region restrictions in Azure required pivoting to AWS EC2.
-
Security: The project required secure SSH key management and strict firewall configuration.
-
Reliability: The solution had to remain online, accessible globally, and strictly use HTTP port 80.
-
Documentation: Complete workflow and server details had to be captured in a GitHub repository for reviewer validation.
Approach
Planning:
-
Assessed cloud provider options, ultimately selecting AWS EC2 for its flexibility and global support.
-
Designed a minimal, repeatable workflow for VM provisioning and server configuration.

Execution:
-
VM Provisioning: Deployed Ubuntu EC2 instance, configured inbound security rules for HTTP/SSH.


-
Server Setup: Installed NGINX, customized
/var/www/html/index.htmlvia SSH for unique identification and deployment timestamp.
![]()
-
Automation: Used shell scripting and nano editor for efficient server-side changes.
-
Public Verification: Validated live website through multiple networks to ensure firewall and browser access.
-
Key Management: Corrected file permissions using Windows
icaclsto emulate Linuxchmod 400, ensuring successful SSH authentication.
Documentation & GitHub:
-
Documented all steps in a public repository, including project context, deployment scripts, and live server details.
Outcome
-
Functional Success: Delivered a stable, publicly available website using AWS EC2 and NGINX.
-
Skill Demonstration: Showcased proficiency in cloud DevOps practices, including networking, Linux server management, and automation.
-
Adaptability: Navigated challenges (Azure region restrictions, Windows permission quirks) using proactive troubleshooting.
-
Impact: The case study highlighted my ability to deliver robust solutions under real-world constraints and mentor peers facing similar challenges.
Reflection
This case study deepened my appreciation for cloud-native DevOps workflows, the value of documentation, and the importance of adapting quickly when circumstances change. It provided a practical demonstration of my problem-solving approach and technical excellence.