<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: irfan pasha</title>
    <description>The latest articles on Forem by irfan pasha (@irfanpasha).</description>
    <link>https://forem.com/irfanpasha</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3672018%2Fb439d24f-1666-4352-a7db-179bc75fc5e8.jpg</url>
      <title>Forem: irfan pasha</title>
      <link>https://forem.com/irfanpasha</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/irfanpasha"/>
    <language>en</language>
    <item>
      <title>🚀 How I Built &amp; Deployed a Real DevOps Project from Scratch (AWS GitHub Netlify)</title>
      <dc:creator>irfan pasha</dc:creator>
      <pubDate>Sun, 08 Feb 2026 20:47:15 +0000</pubDate>
      <link>https://forem.com/irfanpasha/how-i-built-deployed-a-real-devops-project-from-scratch-aws-github-netlify-1img</link>
      <guid>https://forem.com/irfanpasha/how-i-built-deployed-a-real-devops-project-from-scratch-aws-github-netlify-1img</guid>
      <description>&lt;h1&gt;
  
  
  🚀 How I Built &amp;amp; Deployed a Real DevOps Project from Scratch (AWS → GitHub → Netlify)
&lt;/h1&gt;

&lt;p&gt;A few weeks ago, I decided to stop only learning DevOps theory and finally &lt;strong&gt;build a real end-to-end project&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Not a tutorial project.&lt;br&gt;
Not a local demo.&lt;br&gt;
A real cloud → CI/CD → live website pipeline.&lt;/p&gt;

&lt;p&gt;Today, my app is live on the internet 🌍 and this is the full story.&lt;/p&gt;




&lt;h1&gt;
  
  
  🎯 The Challenge I Gave Myself
&lt;/h1&gt;

&lt;p&gt;I wanted to simulate how real companies work.&lt;/p&gt;

&lt;p&gt;Instead of:&lt;br&gt;
“Build React app → run locally”&lt;/p&gt;

&lt;p&gt;I wanted:&lt;br&gt;
&lt;strong&gt;Developer → Cloud → GitHub → CI/CD → Production&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;So I set a goal:&lt;/p&gt;

&lt;p&gt;Build a React application using AWS infrastructure and deploy it with an automated pipeline.&lt;/p&gt;




&lt;h1&gt;
  
  
  ☁️ Step 1 — Building My Own AWS Cloud Environment
&lt;/h1&gt;

&lt;p&gt;Before writing any code, I created real AWS networking.&lt;/p&gt;

&lt;p&gt;This was my first time building infrastructure from scratch.&lt;/p&gt;

&lt;p&gt;I created:&lt;/p&gt;

&lt;p&gt;• Custom VPC (10.0.0.0/16)&lt;br&gt;
• Public Subnet (10.0.1.0/24)&lt;br&gt;
• Internet Gateway&lt;br&gt;
• Route Table with public internet route&lt;br&gt;
• Security Group (SSH + HTTP access)&lt;/p&gt;

&lt;p&gt;Finally, I launched an &lt;strong&gt;Ubuntu EC2 instance&lt;/strong&gt; inside this VPC.&lt;/p&gt;

&lt;p&gt;At this point I had my own mini cloud environment 😄&lt;br&gt;
This is the moment DevOps stopped being theory and started feeling real.&lt;/p&gt;




&lt;h1&gt;
  
  
  💻 Step 2 — Developing Inside the Cloud (EC2)
&lt;/h1&gt;

&lt;p&gt;Instead of coding locally, I connected to EC2 using SSH and turned it into my development machine.&lt;/p&gt;

&lt;p&gt;I installed:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;NodeJS&lt;/li&gt;
&lt;li&gt;Git&lt;/li&gt;
&lt;li&gt;NPM&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Then I created a React application directly on the server.&lt;/p&gt;

&lt;p&gt;Yes… I was literally coding inside AWS ☁️&lt;/p&gt;




&lt;h1&gt;
  
  
  🎮 Step 3 — Building a Real React Application
&lt;/h1&gt;

&lt;p&gt;I didn’t want a simple “Hello World”.&lt;/p&gt;

&lt;p&gt;So I built a &lt;strong&gt;KBC-style AWS Quiz App&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Features I added
&lt;/h3&gt;

&lt;p&gt;🔐 Login page (demo credentials)&lt;br&gt;
⏱ Timer per question&lt;br&gt;
📊 Progress bar&lt;br&gt;
🏆 Score tracking&lt;br&gt;
🌙 Dark / Light theme toggle&lt;br&gt;
💾 High score saved in browser&lt;br&gt;
🔀 Questions shuffle every session&lt;br&gt;
🔄 Restart quiz functionality&lt;/p&gt;

&lt;p&gt;At this point, the project started feeling like a real product.&lt;/p&gt;




&lt;h1&gt;
  
  
  🐙 Step 4 — Turning It Into a Professional GitHub Project
&lt;/h1&gt;

&lt;p&gt;Next, I moved the project to GitHub.&lt;/p&gt;

&lt;p&gt;This step taught me a lot:&lt;/p&gt;

&lt;p&gt;• Initialized Git repo on EC2&lt;br&gt;
• Created GitHub repository&lt;br&gt;
• Generated Personal Access Token&lt;br&gt;
• Pushed project securely&lt;br&gt;
• Wrote a professional README&lt;br&gt;
• Added architecture diagrams&lt;br&gt;
• Added LICENSE &amp;amp; screenshots folder&lt;/p&gt;

&lt;p&gt;My repository finally looked like a real developer project.&lt;/p&gt;




&lt;h1&gt;
  
  
  🔄 Step 5 — Creating a CI/CD Pipeline with Netlify
&lt;/h1&gt;

&lt;p&gt;This was the most exciting step.&lt;/p&gt;

&lt;p&gt;I connected my GitHub repo to Netlify.&lt;/p&gt;

&lt;p&gt;Now every time I push code:&lt;/p&gt;

&lt;p&gt;1️⃣ Dependencies install automatically&lt;br&gt;
2️⃣ React app builds automatically&lt;br&gt;
3️⃣ Site deploys automatically&lt;br&gt;
4️⃣ Website goes live 🌍&lt;/p&gt;

&lt;p&gt;No manual hosting.&lt;br&gt;
No manual uploads.&lt;br&gt;
Real CI/CD pipeline.&lt;/p&gt;

&lt;p&gt;This moment felt amazing.&lt;/p&gt;




&lt;h1&gt;
  
  
  🌍 The Final Result
&lt;/h1&gt;

&lt;p&gt;My application is now live and accessible worldwide.&lt;/p&gt;

&lt;p&gt;From zero → AWS → CI/CD → Production 🚀&lt;/p&gt;

&lt;p&gt;👉 Live Demo&lt;br&gt;
&lt;a href="https://6988f216c9b850f7db01d08b--tiny-begonia-c0a233.netlify.app/" rel="noopener noreferrer"&gt;https://6988f216c9b850f7db01d08b--tiny-begonia-c0a233.netlify.app/&lt;/a&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  🏗️ Architecture Overview
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;DevOps Pipeline&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Developer → AWS EC2 → GitHub → Netlify → Users&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AWS Infrastructure&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;VPC → Public Subnet → EC2 → Internet Gateway&lt;/p&gt;

&lt;p&gt;This simple architecture helped me understand the real deployment flow.&lt;/p&gt;




&lt;h1&gt;
  
  
  💡 What This Project Taught Me
&lt;/h1&gt;

&lt;p&gt;This project changed how I see DevOps.&lt;/p&gt;

&lt;p&gt;I learned:&lt;/p&gt;

&lt;p&gt;• How AWS networking works&lt;br&gt;
• How to develop inside EC2&lt;br&gt;
• How GitHub authentication works&lt;br&gt;
• How CI/CD pipelines deploy apps&lt;br&gt;
• How frontend apps go live globally&lt;/p&gt;

&lt;p&gt;Most importantly:&lt;/p&gt;

&lt;p&gt;👉 DevOps is best learned by building real projects.&lt;/p&gt;




&lt;h1&gt;
  
  
  🚀 What’s Next?
&lt;/h1&gt;

&lt;p&gt;Next upgrades I plan:&lt;/p&gt;

&lt;p&gt;• Custom domain setup&lt;br&gt;
• Backend API on AWS&lt;br&gt;
• Database integration&lt;br&gt;
• Full-stack deployment pipeline&lt;/p&gt;

&lt;p&gt;This is just the beginning.&lt;/p&gt;




&lt;p&gt;GitHub: &lt;a href="https://github.com/IrfanPasha05" rel="noopener noreferrer"&gt;https://github.com/IrfanPasha05&lt;/a&gt;&lt;br&gt;
If you’re starting DevOps, my advice:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Stop waiting. Start building.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Hands-on projects teach more than any course ever will 💯&lt;/p&gt;

</description>
      <category>devops</category>
      <category>aws</category>
      <category>github</category>
      <category>netlify</category>
    </item>
    <item>
      <title>AWS Enterprise Production Architecture – End-to-End DevOps Project</title>
      <dc:creator>irfan pasha</dc:creator>
      <pubDate>Wed, 04 Feb 2026 23:57:50 +0000</pubDate>
      <link>https://forem.com/irfanpasha/aws-enterprise-production-architecture-end-to-end-devops-project-3l8n</link>
      <guid>https://forem.com/irfanpasha/aws-enterprise-production-architecture-end-to-end-devops-project-3l8n</guid>
      <description>&lt;p&gt;🚀 AWS Enterprise Production Architecture – Real DevOps Project&lt;/p&gt;

&lt;p&gt;Today I built a real production-style AWS architecture from scratch and pushed the complete project to GitHub.&lt;/p&gt;

&lt;p&gt;This project demonstrates how real companies host scalable, highly available applications on AWS.&lt;/p&gt;

&lt;p&gt;🌍 Architecture Overview&lt;/p&gt;

&lt;p&gt;✔ Highly Available&lt;br&gt;
✔ Auto Scaling&lt;br&gt;
✔ Self Healing Infrastructure&lt;br&gt;
✔ Monitoring + Auditing&lt;br&gt;
✔ Production Ready Design&lt;/p&gt;

&lt;p&gt;🧩 Architecture Diagram&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fch9jnb0nkvot192judu4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fch9jnb0nkvot192judu4.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;👉 GitHub Repo:&lt;br&gt;
&lt;a href="https://github.com/IrfanPasha05/aws-enterprise-web-architecture" rel="noopener noreferrer"&gt;https://github.com/IrfanPasha05/aws-enterprise-web-architecture&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🏗️ Services Used&lt;br&gt;
Layer   AWS Service&lt;br&gt;
Compute EC2&lt;br&gt;
Networking  VPC + Subnets&lt;br&gt;
Load Balancing  Application Load Balancer&lt;br&gt;
Scaling Auto Scaling Group&lt;br&gt;
Monitoring  CloudWatch&lt;br&gt;
Auditing    CloudTrail&lt;br&gt;
⚙️ Step 1 — Custom VPC Setup&lt;/p&gt;

&lt;p&gt;Created custom VPC:&lt;/p&gt;

&lt;p&gt;CIDR: 10.0.0.0/16&lt;/p&gt;

&lt;p&gt;Subnets:&lt;/p&gt;

&lt;p&gt;Public Subnet 1 → 10.0.1.0/24&lt;br&gt;
Public Subnet 2 → 10.0.3.0/24&lt;br&gt;
Private Subnet → 10.0.2.0/24&lt;/p&gt;

&lt;p&gt;Attached:&lt;/p&gt;

&lt;p&gt;Internet Gateway&lt;/p&gt;

&lt;p&gt;Public Route Table&lt;/p&gt;

&lt;p&gt;💻 Step 2 — Launch EC2 Web Server&lt;/p&gt;

&lt;p&gt;Installed Apache:&lt;/p&gt;

&lt;p&gt;sudo yum update -y&lt;br&gt;
sudo yum install httpd -y&lt;br&gt;
sudo systemctl start httpd&lt;br&gt;
sudo systemctl enable httpd&lt;br&gt;
echo "&lt;/p&gt;
&lt;h1&gt;My AWS Production Server&lt;/h1&gt;" | sudo tee /var/www/html/index.html

&lt;p&gt;Created Golden AMI from this server.&lt;/p&gt;

&lt;p&gt;⚖️ Step 3 — Application Load Balancer&lt;/p&gt;

&lt;p&gt;Created:&lt;/p&gt;

&lt;p&gt;Target Group&lt;/p&gt;

&lt;p&gt;Registered EC2 instances&lt;/p&gt;

&lt;p&gt;Listener → HTTP : 80&lt;/p&gt;

&lt;p&gt;Result → Load balanced traffic across servers.&lt;/p&gt;

&lt;p&gt;🔁 Step 4 — Auto Scaling Group (Self Healing)&lt;/p&gt;

&lt;p&gt;Configured Auto Scaling:&lt;/p&gt;

&lt;p&gt;Min = 1&lt;br&gt;
Desired = 2&lt;br&gt;
Max = 3&lt;/p&gt;

&lt;p&gt;Tested by terminating instances manually.&lt;/p&gt;

&lt;p&gt;AWS automatically launched new server 🤯&lt;/p&gt;

&lt;p&gt;Self-healing infrastructure achieved.&lt;/p&gt;

&lt;p&gt;📊 Step 5 — CloudWatch Monitoring&lt;/p&gt;

&lt;p&gt;Created alarms on:&lt;/p&gt;

&lt;p&gt;CPU Utilization &amp;lt; 49%&lt;/p&gt;

&lt;p&gt;Auto Scaling reacts to traffic automatically.&lt;/p&gt;

&lt;p&gt;🔐 Step 6 — CloudTrail Auditing&lt;/p&gt;

&lt;p&gt;Enabled CloudTrail to track:&lt;/p&gt;

&lt;p&gt;Instance termination&lt;/p&gt;

&lt;p&gt;API calls&lt;/p&gt;

&lt;p&gt;Security events&lt;/p&gt;

&lt;p&gt;Verified logs after terminating servers ✔&lt;/p&gt;

&lt;p&gt;🧪 Real Test Performed&lt;/p&gt;

&lt;p&gt;I manually terminated all EC2 instances.&lt;/p&gt;

&lt;p&gt;Result:&lt;/p&gt;

&lt;p&gt;Auto Scaling → Launched new server automatically&lt;br&gt;
CloudTrail → Logged termination event&lt;br&gt;
CloudWatch → Triggered alarm&lt;/p&gt;

&lt;p&gt;🎉 Production architecture working perfectly.&lt;/p&gt;

&lt;p&gt;📂 GitHub Project&lt;/p&gt;

&lt;p&gt;Full implementation + scripts available here:&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://github.com/IrfanPasha05/aws-enterprise-web-architecture" rel="noopener noreferrer"&gt;https://github.com/IrfanPasha05/aws-enterprise-web-architecture&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;❤️ What I Learned&lt;/p&gt;

&lt;p&gt;This project helped me understand:&lt;/p&gt;

&lt;p&gt;Real world AWS architecture&lt;/p&gt;

&lt;p&gt;High availability design&lt;/p&gt;

&lt;p&gt;Auto healing systems&lt;/p&gt;

&lt;p&gt;Monitoring &amp;amp; auditing in cloud&lt;/p&gt;

&lt;p&gt;DevOps workflow with Git&lt;/p&gt;

&lt;p&gt;🚀 Final Thoughts&lt;/p&gt;

&lt;p&gt;This is a beginner-friendly enterprise architecture project that every aspiring DevOps / Cloud Engineer should build.&lt;/p&gt;

&lt;p&gt;If you're learning AWS — try building this yourself!&lt;/p&gt;

&lt;p&gt;📢 Connect With Me&lt;/p&gt;

&lt;p&gt;If you liked this project, connect with me on GitHub 👇&lt;br&gt;
⭐ Star the repo if it helped you.&lt;a href="https://dev.tourl"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devops</category>
      <category>cloud</category>
      <category>aws</category>
      <category>beginners</category>
    </item>
    <item>
      <title>🚀AWS Lambda S3 File Upload Logger using Python</title>
      <dc:creator>irfan pasha</dc:creator>
      <pubDate>Sun, 01 Feb 2026 16:50:18 +0000</pubDate>
      <link>https://forem.com/irfanpasha/aws-lambda-s3-file-upload-logger-using-python-31n4</link>
      <guid>https://forem.com/irfanpasha/aws-lambda-s3-file-upload-logger-using-python-31n4</guid>
      <description>&lt;h2&gt;
  
  
  🚀 Project Overview
&lt;/h2&gt;

&lt;p&gt;In this project, I implemented an AWS Lambda function using Python that automatically logs file upload details whenever a file is uploaded to an Amazon S3 bucket.&lt;/p&gt;

&lt;p&gt;This project demonstrates real-time event-driven architecture using AWS services.&lt;/p&gt;

&lt;h2&gt;
  
  
  🧱 Architecture
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Flow:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;File uploaded to S3 bucket
&lt;/li&gt;
&lt;li&gt;S3 triggers AWS Lambda
&lt;/li&gt;
&lt;li&gt;Lambda extracts file details
&lt;/li&gt;
&lt;li&gt;Logs stored in CloudWatch
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Services Used:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Amazon S3&lt;/li&gt;
&lt;li&gt;AWS Lambda (Python)&lt;/li&gt;
&lt;li&gt;Amazon CloudWatch&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🐍 Lambda Function Code (Python)
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
python
def lambda_handler(event, context):
    record = event['Records'][0]
    bucket_name = record['s3']['bucket']['name']
    file_name = record['s3']['object']['key']
    file_size = record['s3']['object']['size']

    print(f"Bucket Name: {bucket_name}")
    print(f"File Name: {file_name}")
    print(f"File Size: {file_size} bytes")

📊 CloudWatch Logs Output

After uploading a file to the S3 bucket, the Lambda function logged:

Bucket Name

File Name

File Size

This confirms the function executed successfully.


https://github.com/IrfanPasha05/s3-file-upload-logger
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>aws</category>
      <category>lambda</category>
      <category>s3</category>
      <category>python</category>
    </item>
    <item>
      <title>🚀 AWS ALB Auto Scaling with CloudWatch – Real-World Architecture (Hands-On Project)</title>
      <dc:creator>irfan pasha</dc:creator>
      <pubDate>Thu, 22 Jan 2026 20:08:37 +0000</pubDate>
      <link>https://forem.com/irfanpasha/aws-alb-auto-scaling-with-cloudwatch-real-world-architecture-hands-on-project-44bk</link>
      <guid>https://forem.com/irfanpasha/aws-alb-auto-scaling-with-cloudwatch-real-world-architecture-hands-on-project-44bk</guid>
      <description>&lt;p&gt;In this article, I’m sharing a real-time AWS hands-on project where I designed and implemented a highly available, auto-scaling web architecture using core AWS services.&lt;/p&gt;

&lt;p&gt;This project helped me understand how AWS components work together in a production-style environment, not just theory.&lt;/p&gt;

&lt;p&gt;📌 Project Objective&lt;/p&gt;

&lt;p&gt;The goal of this project was to:&lt;/p&gt;

&lt;p&gt;Host a web application securely on AWS&lt;/p&gt;

&lt;p&gt;Distribute traffic using Application Load Balancer&lt;/p&gt;

&lt;p&gt;Automatically scale EC2 instances based on load&lt;/p&gt;

&lt;p&gt;Monitor infrastructure using CloudWatch&lt;/p&gt;

&lt;p&gt;Follow AWS best practices for networking and security&lt;/p&gt;

&lt;p&gt;🧱 AWS Services Used&lt;/p&gt;

&lt;p&gt;Amazon VPC&lt;/p&gt;

&lt;p&gt;Public Subnets (Multi-AZ)&lt;/p&gt;

&lt;p&gt;Internet Gateway&lt;/p&gt;

&lt;p&gt;Route Tables&lt;/p&gt;

&lt;p&gt;Security Groups&lt;/p&gt;

&lt;p&gt;EC2 Instances&lt;/p&gt;

&lt;p&gt;Application Load Balancer (ALB)&lt;/p&gt;

&lt;p&gt;Target Groups&lt;/p&gt;

&lt;p&gt;Auto Scaling Group (ASG)&lt;/p&gt;

&lt;p&gt;Amazon CloudWatch&lt;/p&gt;

&lt;p&gt;🏗️ Architecture Overview&lt;/p&gt;

&lt;p&gt;The architecture follows a classic real-world AWS design:&lt;/p&gt;

&lt;p&gt;A custom VPC&lt;/p&gt;

&lt;p&gt;Two public subnets in different Availability Zones&lt;/p&gt;

&lt;p&gt;An internet-facing ALB&lt;/p&gt;

&lt;p&gt;Auto Scaling Group behind the ALB&lt;/p&gt;

&lt;p&gt;CloudWatch alarms to scale instances automatically&lt;/p&gt;

&lt;p&gt;This ensures:&lt;/p&gt;

&lt;p&gt;High availability&lt;/p&gt;

&lt;p&gt;Fault tolerance&lt;/p&gt;

&lt;p&gt;Automatic scaling&lt;/p&gt;

&lt;p&gt;Secure access&lt;/p&gt;

&lt;p&gt;🪜 Step-by-Step Implementation&lt;br&gt;
1️⃣ Create Custom VPC&lt;/p&gt;

&lt;p&gt;Created a custom VPC with IPv4 CIDR block&lt;/p&gt;

&lt;p&gt;Enabled DNS resolution &amp;amp; DNS hostnames&lt;/p&gt;

&lt;p&gt;✔ Foundation network for the project&lt;/p&gt;

&lt;p&gt;2️⃣ Create Public Subnets (Multi-AZ)&lt;/p&gt;

&lt;p&gt;Created two public subnets&lt;/p&gt;

&lt;p&gt;Each subnet placed in a different Availability Zone&lt;/p&gt;

&lt;p&gt;✔ Ensures high availability&lt;/p&gt;

&lt;p&gt;3️⃣ Create and Attach Internet Gateway&lt;/p&gt;

&lt;p&gt;Created an Internet Gateway (IGW)&lt;/p&gt;

&lt;p&gt;Attached it to the VPC&lt;/p&gt;

&lt;p&gt;✔ Enables internet access&lt;/p&gt;

&lt;p&gt;4️⃣ Configure Route Table&lt;/p&gt;

&lt;p&gt;Created a route table&lt;/p&gt;

&lt;p&gt;Added route 0.0.0.0/0 → Internet Gateway&lt;/p&gt;

&lt;p&gt;Associated route table with public subnets&lt;/p&gt;

&lt;p&gt;✔ Enables outbound internet traffic&lt;/p&gt;

&lt;p&gt;5️⃣ Create Security Groups&lt;/p&gt;

&lt;p&gt;ALB Security Group&lt;/p&gt;

&lt;p&gt;Allow HTTP (80) from anywhere&lt;/p&gt;

&lt;p&gt;EC2 Security Group&lt;/p&gt;

&lt;p&gt;Allow HTTP (80) from ALB&lt;/p&gt;

&lt;p&gt;Allow SSH (22) from my IP only&lt;/p&gt;

&lt;p&gt;✔ Follows security best practices&lt;/p&gt;

&lt;p&gt;6️⃣ Launch EC2 Using Launch Template&lt;/p&gt;

&lt;p&gt;Created a launch template&lt;/p&gt;

&lt;p&gt;Added User Data to install and start web server automatically&lt;/p&gt;

&lt;p&gt;Web page shows instance details&lt;/p&gt;

&lt;p&gt;✔ Enables automated instance creation&lt;/p&gt;

&lt;p&gt;7️⃣ Create Target Group&lt;/p&gt;

&lt;p&gt;Target type: EC2&lt;/p&gt;

&lt;p&gt;Protocol: HTTP (80)&lt;/p&gt;

&lt;p&gt;Health checks enabled&lt;/p&gt;

&lt;p&gt;✔ Ensures only healthy instances receive traffic&lt;/p&gt;

&lt;p&gt;8️⃣ Create Application Load Balancer (ALB)&lt;/p&gt;

&lt;p&gt;Internet-facing ALB&lt;/p&gt;

&lt;p&gt;Associated with public subnets&lt;/p&gt;

&lt;p&gt;Listener on port 80&lt;/p&gt;

&lt;p&gt;Forward traffic to target group&lt;/p&gt;

&lt;p&gt;✔ Distributes traffic evenly&lt;/p&gt;

&lt;p&gt;9️⃣ Create Auto Scaling Group (ASG)&lt;/p&gt;

&lt;p&gt;Attached launch template&lt;/p&gt;

&lt;p&gt;Attached ALB target group&lt;/p&gt;

&lt;p&gt;Set:&lt;/p&gt;

&lt;p&gt;Min capacity&lt;/p&gt;

&lt;p&gt;Desired capacity&lt;/p&gt;

&lt;p&gt;Max capacity&lt;/p&gt;

&lt;p&gt;✔ Automatically manages EC2 instances&lt;/p&gt;

&lt;p&gt;🔟 Configure CloudWatch Alarms&lt;/p&gt;

&lt;p&gt;Created CloudWatch alarms based on CPU Utilization&lt;/p&gt;

&lt;p&gt;Scale-out when CPU increases&lt;/p&gt;

&lt;p&gt;Scale-in when CPU decreases&lt;/p&gt;

&lt;p&gt;✔ Fully automated scaling&lt;/p&gt;

&lt;p&gt;📊 Monitoring &amp;amp; Testing&lt;/p&gt;

&lt;p&gt;Verified EC2 instances were healthy&lt;/p&gt;

&lt;p&gt;Checked CloudWatch metrics&lt;/p&gt;

&lt;p&gt;Accessed application via ALB DNS name&lt;/p&gt;

&lt;p&gt;Confirmed traffic distribution&lt;/p&gt;

&lt;p&gt;✔ Architecture worked as expected&lt;/p&gt;

&lt;p&gt;📸 Screenshots (Proof of Work)&lt;/p&gt;

&lt;p&gt;Screenshots include:&lt;/p&gt;

&lt;p&gt;VPC &amp;amp; Subnets&lt;/p&gt;

&lt;p&gt;Route Tables &amp;amp; IGW&lt;/p&gt;

&lt;p&gt;Security Groups&lt;/p&gt;

&lt;p&gt;ALB &amp;amp; Target Groups&lt;/p&gt;

&lt;p&gt;Auto Scaling Group&lt;/p&gt;

&lt;p&gt;CloudWatch Alarms&lt;/p&gt;

&lt;p&gt;Final browser output&lt;/p&gt;

&lt;p&gt;✔ 100% real AWS console screenshots&lt;/p&gt;

&lt;p&gt;✅ Key Learnings&lt;/p&gt;

&lt;p&gt;Through this project, I learned:&lt;/p&gt;

&lt;p&gt;How AWS networking works in real environments&lt;/p&gt;

&lt;p&gt;Designing scalable and fault-tolerant systems&lt;/p&gt;

&lt;p&gt;Using ALB with Auto Scaling Groups&lt;/p&gt;

&lt;p&gt;Monitoring and automation using CloudWatch&lt;/p&gt;

&lt;p&gt;Following AWS security best practices&lt;/p&gt;

&lt;p&gt;🧠 Why This Is a Real-World Project&lt;/p&gt;

&lt;p&gt;This is not a demo or lab-only project.&lt;/p&gt;

&lt;p&gt;It reflects:&lt;/p&gt;

&lt;p&gt;Enterprise-style AWS architecture&lt;/p&gt;

&lt;p&gt;Production-ready concepts&lt;/p&gt;

&lt;p&gt;Hands-on implementation from scratch&lt;/p&gt;

&lt;p&gt;🔗 GitHub Repository&lt;/p&gt;

&lt;p&gt;📂 Full project with screenshots &amp;amp; documentation:&lt;br&gt;
👉 GitHub: &lt;a href="https://github.com/IrfanPasha05/aws-alb-autoscaling-cloudwatch-architecture" rel="noopener noreferrer"&gt;https://github.com/IrfanPasha05/aws-alb-autoscaling-cloudwatch-architecture&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🎯 Final Thoughts&lt;/p&gt;

&lt;p&gt;This project boosted my confidence in AWS core services and helped me understand how scalable architectures are built in real organizations.&lt;/p&gt;

&lt;p&gt;If you’re learning AWS or preparing for cloud roles, I highly recommend implementing this architecture hands-on.&lt;/p&gt;

&lt;p&gt;🙌 Thanks for Reading!&lt;/p&gt;

&lt;p&gt;If you found this helpful:&lt;/p&gt;

&lt;p&gt;❤️ Like&lt;/p&gt;

&lt;p&gt;💬 Comment&lt;/p&gt;

&lt;p&gt;🔁 Share&lt;/p&gt;

&lt;p&gt;Happy Learning ☁️🚀&lt;/p&gt;

</description>
      <category>aws</category>
      <category>biggneer</category>
    </item>
    <item>
      <title>🚀 Deploying a Highly Available Web Application on AWS using ALB &amp; Auto Scaling (Beginner-Friendly)</title>
      <dc:creator>irfan pasha</dc:creator>
      <pubDate>Mon, 19 Jan 2026 23:51:04 +0000</pubDate>
      <link>https://forem.com/irfanpasha/deploying-a-highly-available-web-application-on-aws-using-alb-auto-scaling-beginner-friendly-mp9</link>
      <guid>https://forem.com/irfanpasha/deploying-a-highly-available-web-application-on-aws-using-alb-auto-scaling-beginner-friendly-mp9</guid>
      <description>&lt;p&gt;👋 Introduction&lt;/p&gt;

&lt;p&gt;In this hands-on project, I built a production-ready AWS architecture using core services like VPC, Application Load Balancer, Auto Scaling Group, EC2, and NAT Gateway.&lt;/p&gt;

&lt;p&gt;This setup follows AWS best practices:&lt;/p&gt;

&lt;p&gt;Secure networking&lt;/p&gt;

&lt;p&gt;High availability&lt;/p&gt;

&lt;p&gt;Automatic scaling&lt;/p&gt;

&lt;p&gt;Zero public access to EC2 instances&lt;/p&gt;

&lt;p&gt;This guide is beginner-friendly, yet interview-ready.&lt;/p&gt;

&lt;p&gt;🧠 What You Will Learn&lt;/p&gt;

&lt;p&gt;✅ How to design a secure AWS VPC&lt;br&gt;
✅ Public vs Private Subnets (real use-case)&lt;br&gt;
✅ Application Load Balancer (ALB)&lt;br&gt;
✅ Auto Scaling Group (ASG)&lt;br&gt;
✅ NAT Gateway for outbound internet&lt;br&gt;
✅ Real-world architecture used in companies&lt;/p&gt;

&lt;p&gt;🏗️ Architecture Overview&lt;br&gt;
Internet&lt;br&gt;
   |&lt;br&gt;
   ▼&lt;br&gt;
Application Load Balancer (Public Subnets)&lt;br&gt;
   |&lt;br&gt;
   ▼&lt;br&gt;
Target Group&lt;br&gt;
   |&lt;br&gt;
   ▼&lt;br&gt;
Auto Scaling Group&lt;br&gt;
(EC2 Instances in Private Subnets)&lt;br&gt;
   |&lt;br&gt;
   ▼&lt;br&gt;
NAT Gateway → Internet (Outbound Only)&lt;/p&gt;

&lt;p&gt;🔒 EC2 instances have NO public IPs&lt;br&gt;
🌐 Only ALB is exposed to the internet&lt;/p&gt;

&lt;p&gt;🛠️ Services Used&lt;/p&gt;

&lt;p&gt;Amazon VPC&lt;/p&gt;

&lt;p&gt;EC2 (Ubuntu)&lt;/p&gt;

&lt;p&gt;Application Load Balancer&lt;/p&gt;

&lt;p&gt;Auto Scaling Group&lt;/p&gt;

&lt;p&gt;Target Groups&lt;/p&gt;

&lt;p&gt;NAT Gateway&lt;/p&gt;

&lt;p&gt;Elastic IP&lt;/p&gt;

&lt;p&gt;Security Groups&lt;/p&gt;

&lt;p&gt;🚦 Step-by-Step Implementation&lt;br&gt;
1️⃣ Create a Custom VPC&lt;/p&gt;

&lt;p&gt;CIDR: 10.0.0.0/16&lt;/p&gt;

&lt;p&gt;Enable:&lt;/p&gt;

&lt;p&gt;DNS Hostnames&lt;/p&gt;

&lt;p&gt;DNS Resolution&lt;/p&gt;

&lt;p&gt;2️⃣ Create Subnets&lt;/p&gt;

&lt;p&gt;Create 4 subnets:&lt;/p&gt;

&lt;p&gt;Public Subnets&lt;/p&gt;

&lt;p&gt;Public-Subnet-1 (ALB)&lt;/p&gt;

&lt;p&gt;Public-Subnet-2 (NAT Gateway)&lt;/p&gt;

&lt;p&gt;Private Subnets&lt;/p&gt;

&lt;p&gt;Private-Subnet-1 (EC2)&lt;/p&gt;

&lt;p&gt;Private-Subnet-2 (EC2)&lt;/p&gt;

&lt;p&gt;⚠️ Enable Auto-assign Public IP = YES only for public subnets&lt;/p&gt;

&lt;p&gt;3️⃣ Internet Gateway&lt;/p&gt;

&lt;p&gt;Create and attach an Internet Gateway to the VPC&lt;/p&gt;

&lt;p&gt;Required for ALB and NAT Gateway&lt;/p&gt;

&lt;p&gt;4️⃣ NAT Gateway (CRITICAL)&lt;/p&gt;

&lt;p&gt;Create NAT Gateway in public subnet&lt;/p&gt;

&lt;p&gt;Attach Elastic IP&lt;/p&gt;

&lt;p&gt;Allows private EC2 to access internet securely&lt;/p&gt;

&lt;p&gt;5️⃣ Route Tables&lt;/p&gt;

&lt;p&gt;Public Route Table&lt;/p&gt;

&lt;p&gt;0.0.0.0/0 → Internet Gateway&lt;/p&gt;

&lt;p&gt;Private Route Table&lt;/p&gt;

&lt;p&gt;0.0.0.0/0 → NAT Gateway&lt;/p&gt;

&lt;p&gt;Associate correctly with subnets.&lt;/p&gt;

&lt;p&gt;6️⃣ Security Groups&lt;br&gt;
🔹 ALB Security Group&lt;/p&gt;

&lt;p&gt;HTTP (80) → 0.0.0.0/0&lt;/p&gt;

&lt;p&gt;🔹 EC2 Security Group&lt;/p&gt;

&lt;p&gt;HTTP (80) → ALB Security Group&lt;/p&gt;

&lt;p&gt;SSH (22) → Your IP (optional)&lt;/p&gt;

&lt;p&gt;🔐 EC2 is accessible only via ALB&lt;/p&gt;

&lt;p&gt;7️⃣ Launch Template (EC2)&lt;/p&gt;

&lt;p&gt;AMI: Ubuntu 22.04&lt;br&gt;
Instance Type: t2.micro&lt;/p&gt;

&lt;p&gt;🧾 User Data Script&lt;/p&gt;

&lt;h1&gt;
  
  
  !/bin/bash
&lt;/h1&gt;

&lt;p&gt;apt update -y&lt;br&gt;
apt install apache2 -y&lt;br&gt;
systemctl start apache2&lt;br&gt;
systemctl enable apache2&lt;/p&gt;

&lt;p&gt;echo "&lt;/p&gt;
&lt;h1&gt;Welcome from ALB + Auto Scaling&lt;/h1&gt;
&lt;h2&gt;Hostname: $(hostname)&lt;/h2&gt;" &amp;gt; /var/www/html/index.html

&lt;p&gt;8️⃣ Target Group&lt;/p&gt;

&lt;p&gt;Target Type: Instance&lt;/p&gt;

&lt;p&gt;Protocol: HTTP&lt;/p&gt;

&lt;p&gt;Port: 80&lt;/p&gt;

&lt;p&gt;Health Check Path: /&lt;/p&gt;

&lt;p&gt;9️⃣ Application Load Balancer&lt;/p&gt;

&lt;p&gt;Type: Internet-facing&lt;/p&gt;

&lt;p&gt;Subnets: Public Subnets&lt;/p&gt;

&lt;p&gt;Listener: HTTP 80&lt;/p&gt;

&lt;p&gt;Forward to Target Group&lt;/p&gt;

&lt;p&gt;🔟 Auto Scaling Group&lt;/p&gt;

&lt;p&gt;Use Launch Template&lt;/p&gt;

&lt;p&gt;Subnets: Private Subnets&lt;/p&gt;

&lt;p&gt;Desired: 2&lt;/p&gt;

&lt;p&gt;Min: 1&lt;/p&gt;

&lt;p&gt;Max: 3&lt;/p&gt;

&lt;p&gt;Attach to ALB Target Group&lt;/p&gt;

&lt;p&gt;📈 Optional: CPU-based scaling policy&lt;/p&gt;

&lt;p&gt;✅ Final Verification&lt;/p&gt;

&lt;p&gt;Copy ALB DNS name&lt;/p&gt;

&lt;p&gt;Paste into browser&lt;/p&gt;

&lt;p&gt;Refresh multiple times&lt;/p&gt;

&lt;p&gt;🎉 You will see different hostnames&lt;br&gt;
This confirms:&lt;/p&gt;

&lt;p&gt;Load balancing&lt;/p&gt;

&lt;p&gt;Auto scaling&lt;/p&gt;

&lt;p&gt;High availability&lt;/p&gt;

&lt;p&gt;📂 GitHub Repository&lt;/p&gt;

&lt;p&gt;🔗 Project Source Code &amp;amp; Documentation&lt;br&gt;
👉 &lt;a href="https://github.com/IrfanPasha05/aws-alb-autoscaling-project" rel="noopener noreferrer"&gt;https://github.com/IrfanPasha05/aws-alb-autoscaling-project&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Includes:&lt;/p&gt;

&lt;p&gt;Folder structure&lt;/p&gt;

&lt;p&gt;User-data scripts&lt;/p&gt;

&lt;p&gt;Setup steps&lt;/p&gt;

&lt;p&gt;Troubleshooting guide&lt;/p&gt;

&lt;p&gt;🎯 Why This Project Matters&lt;/p&gt;

&lt;p&gt;This architecture is used in:&lt;/p&gt;

&lt;p&gt;Real production environments&lt;/p&gt;

&lt;p&gt;Enterprise applications&lt;/p&gt;

&lt;p&gt;DevOps &amp;amp; Cloud Engineer roles&lt;/p&gt;

&lt;p&gt;Perfect for:&lt;/p&gt;

&lt;p&gt;Resume&lt;/p&gt;

&lt;p&gt;Interviews&lt;/p&gt;

&lt;p&gt;Portfolio&lt;/p&gt;

&lt;p&gt;LinkedIn &amp;amp; DEV&lt;/p&gt;

&lt;p&gt;🧩 Future Enhancements&lt;/p&gt;

&lt;p&gt;HTTPS with ACM&lt;/p&gt;

&lt;p&gt;Custom domain (Route 53)&lt;/p&gt;

&lt;p&gt;CloudFront CDN&lt;/p&gt;

&lt;p&gt;Monitoring with CloudWatch&lt;/p&gt;

&lt;p&gt;🙌 Final Thoughts&lt;/p&gt;

&lt;p&gt;This project strengthened my understanding of AWS networking, security, and scalability. If you’re learning AWS or preparing for cloud roles — build this once, and you’ll remember it forever.&lt;/p&gt;

&lt;p&gt;Happy Clouding ☁️🚀&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloudengineer</category>
      <category>biginner</category>
    </item>
    <item>
      <title>AWS VPC Project: Secure Website Hosting with Public &amp; Private EC2</title>
      <dc:creator>irfan pasha</dc:creator>
      <pubDate>Thu, 15 Jan 2026 00:39:28 +0000</pubDate>
      <link>https://forem.com/irfanpasha/aws-vpc-project-secure-website-hosting-with-public-private-ec2-42ig</link>
      <guid>https://forem.com/irfanpasha/aws-vpc-project-secure-website-hosting-with-public-private-ec2-42ig</guid>
      <description>&lt;p&gt;In this project, I built a real-world AWS VPC architecture from scratch using public and private subnets. I hosted a live website on a public Ubuntu EC2 instance and securely accessed a private EC2 instance using a bastion host. The private instance had outbound internet access via a NAT Gateway while remaining inaccessible from the internet.&lt;/p&gt;

&lt;p&gt;This project helped me deeply understand VPC networking, route tables, security groups, Internet Gateways, and NAT Gateways in a practical way.&lt;/p&gt;

&lt;p&gt;This repository documents a complete, hands-on AWS VPC project built from scratch and tested end-to-end. The project demonstrates real-world networking, security best practices, and production-style architecture using Ubuntu EC2 instances.&lt;/p&gt;

&lt;p&gt;📌 Project Overview&lt;/p&gt;

&lt;p&gt;In this project, we:&lt;/p&gt;

&lt;p&gt;Created a custom VPC&lt;/p&gt;

&lt;p&gt;Designed public and private subnets&lt;/p&gt;

&lt;p&gt;Configured Internet Gateway &amp;amp; NAT Gateway&lt;/p&gt;

&lt;p&gt;Launched two Ubuntu EC2 instances&lt;/p&gt;

&lt;p&gt;Public EC2 → Website + Bastion Host&lt;/p&gt;

&lt;p&gt;Private EC2 → Secure backend server&lt;/p&gt;

&lt;p&gt;Hosted a live website on the public EC2&lt;/p&gt;

&lt;p&gt;Verified private EC2 internet access via NAT Gateway&lt;/p&gt;

&lt;p&gt;🏗️ Architecture Diagram (Logical)&lt;br&gt;
Internet&lt;br&gt;
   |&lt;br&gt;
Internet Gateway&lt;br&gt;
   |&lt;br&gt;
Public Subnet (10.0.1.0/24)&lt;br&gt;
   |-- Ubuntu EC2 (Web Server + Bastion)&lt;br&gt;
   |&lt;br&gt;
NAT Gateway&lt;br&gt;
   |&lt;br&gt;
Private Subnet (10.0.2.0/24)&lt;br&gt;
   |-- Ubuntu EC2 (Backend Server)&lt;br&gt;
🛠️ AWS Services Used&lt;/p&gt;

&lt;p&gt;Amazon VPC&lt;/p&gt;

&lt;p&gt;EC2 (Ubuntu 22.04 LTS)&lt;/p&gt;

&lt;p&gt;Internet Gateway (IGW)&lt;/p&gt;

&lt;p&gt;NAT Gateway&lt;/p&gt;

&lt;p&gt;Route Tables&lt;/p&gt;

&lt;p&gt;Security Groups&lt;/p&gt;

&lt;p&gt;Elastic IP&lt;/p&gt;

&lt;p&gt;🧱 STEP-BY-STEP IMPLEMENTATION&lt;br&gt;
✅ Step 1: Create Custom VPC&lt;/p&gt;

&lt;p&gt;Name: Demo-custom-vpc&lt;/p&gt;

&lt;p&gt;CIDR Block: 10.0.0.0/16&lt;/p&gt;

&lt;p&gt;✅ Step 2: Create Subnets&lt;br&gt;
Public Subnet&lt;/p&gt;

&lt;p&gt;Name: Public-subnet&lt;/p&gt;

&lt;p&gt;CIDR: 10.0.1.0/24&lt;/p&gt;

&lt;p&gt;AZ: us-east-1a&lt;/p&gt;

&lt;p&gt;Private Subnet&lt;/p&gt;

&lt;p&gt;Name: Private-subnet&lt;/p&gt;

&lt;p&gt;CIDR: 10.0.2.0/24&lt;/p&gt;

&lt;p&gt;AZ: us-east-1b&lt;/p&gt;

&lt;p&gt;✅ Step 3: Create and Attach Internet Gateway&lt;/p&gt;

&lt;p&gt;Name: Demo-igw&lt;/p&gt;

&lt;p&gt;Attach to Demo-custom-vpc&lt;/p&gt;

&lt;p&gt;✅ Step 4: Create NAT Gateway&lt;/p&gt;

&lt;p&gt;Subnet: Public-subnet&lt;/p&gt;

&lt;p&gt;Allocate Elastic IP&lt;/p&gt;

&lt;p&gt;Name: Demo-nat&lt;/p&gt;

&lt;p&gt;✅ Step 5: Configure Route Tables&lt;br&gt;
Public Route Table (Public-RT)&lt;/p&gt;

&lt;p&gt;Routes:&lt;/p&gt;

&lt;p&gt;10.0.0.0/16 → local&lt;br&gt;
0.0.0.0/0   → Internet Gateway&lt;/p&gt;

&lt;p&gt;Associate with:&lt;/p&gt;

&lt;p&gt;Public-subnet&lt;/p&gt;

&lt;p&gt;Private Route Table (Private-RT)&lt;/p&gt;

&lt;p&gt;Routes:&lt;/p&gt;

&lt;p&gt;10.0.0.0/16 → local&lt;br&gt;
0.0.0.0/0   → NAT Gateway&lt;/p&gt;

&lt;p&gt;Associate with:&lt;/p&gt;

&lt;p&gt;Private-subnet&lt;/p&gt;

&lt;p&gt;✅ Step 6: Configure Security Groups&lt;br&gt;
Web-SG (Public EC2)&lt;/p&gt;

&lt;p&gt;SSH (22) → My IP&lt;/p&gt;

&lt;p&gt;HTTP (80) → 0.0.0.0/0&lt;/p&gt;

&lt;p&gt;Private-SG (Private EC2)&lt;/p&gt;

&lt;p&gt;SSH (22) → Source: Web-SG&lt;/p&gt;

&lt;p&gt;🚀 Step 7: Launch EC2 Instances&lt;br&gt;
Public EC2 (Web Server)&lt;/p&gt;

&lt;p&gt;AMI: Ubuntu 22.04 LTS&lt;/p&gt;

&lt;p&gt;Subnet: Public-subnet&lt;/p&gt;

&lt;p&gt;Auto-assign Public IP: Enabled&lt;/p&gt;

&lt;p&gt;Security Group: Web-SG&lt;/p&gt;

&lt;p&gt;Private EC2 (Backend Server)&lt;/p&gt;

&lt;p&gt;AMI: Ubuntu 22.04 LTS&lt;/p&gt;

&lt;p&gt;Subnet: Private-subnet&lt;/p&gt;

&lt;p&gt;Auto-assign Public IP: Disabled&lt;/p&gt;

&lt;p&gt;Security Group: Private-SG&lt;/p&gt;

&lt;p&gt;🌐 Step 8: Host Website on Public EC2&lt;br&gt;
sudo apt update -y&lt;br&gt;
sudo apt install apache2 -y&lt;br&gt;
sudo systemctl start apache2&lt;br&gt;
sudo systemctl enable apache2&lt;/p&gt;

&lt;p&gt;Create a simple webpage:&lt;/p&gt;

&lt;p&gt;cd /var/www/html&lt;br&gt;
sudo nano index.html&lt;/p&gt;

&lt;h1&gt;AWS VPC Project&lt;/h1&gt;

&lt;p&gt;Website hosted on Ubuntu EC2 in a Public Subnet&lt;/p&gt;

&lt;p&gt;Access in browser:&lt;/p&gt;

&lt;p&gt;http://&lt;br&gt;
🔐 Step 9: Bastion Host Access (Best Practice)&lt;/p&gt;

&lt;p&gt;Copy key from local → Public EC2 using scp&lt;/p&gt;

&lt;p&gt;SSH into Public EC2&lt;/p&gt;

&lt;p&gt;From Public EC2, SSH into Private EC2 using private IP&lt;/p&gt;

&lt;p&gt;ssh -i demo-key.pem &lt;a href="mailto:ubuntu@10.0.2.128"&gt;ubuntu@10.0.2.128&lt;/a&gt;&lt;br&gt;
🌍 Step 10: Verify NAT Gateway&lt;/p&gt;

&lt;p&gt;From Private EC2:&lt;/p&gt;

&lt;p&gt;ping google.com&lt;/p&gt;

&lt;p&gt;✅ Confirms outbound internet access via NAT Gateway&lt;/p&gt;

&lt;p&gt;🎯 Final Outcome&lt;/p&gt;

&lt;p&gt;Public website accessible from internet&lt;/p&gt;

&lt;p&gt;Private EC2 fully isolated&lt;/p&gt;

&lt;p&gt;Secure access using Bastion Host&lt;/p&gt;

&lt;p&gt;Enterprise-grade AWS VPC architecture&lt;/p&gt;

&lt;p&gt;Github--&lt;a href="https://github.com/IrfanPasha05/aws-vpc-public-private-ec2/blob/main/README.md" rel="noopener noreferrer"&gt;https://github.com/IrfanPasha05/aws-vpc-public-private-ec2/blob/main/README.md&lt;/a&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>vpc</category>
      <category>bignner</category>
    </item>
    <item>
      <title>🚀 Hosting a Static Portfolio Website on AWS S3 using IAM (Beginner Project)</title>
      <dc:creator>irfan pasha</dc:creator>
      <pubDate>Tue, 13 Jan 2026 20:55:53 +0000</pubDate>
      <link>https://forem.com/irfanpasha/hosting-a-static-portfolio-website-on-aws-s3-using-iam-beginner-project-3ao4</link>
      <guid>https://forem.com/irfanpasha/hosting-a-static-portfolio-website-on-aws-s3-using-iam-beginner-project-3ao4</guid>
      <description>&lt;p&gt;As part of my AWS learning journey, I built and deployed a static portfolio website using Amazon S3 and secured access using IAM best practices.&lt;br&gt;
This project helped me understand S3 static hosting, bucket policies, IAM permissions, and real-world troubleshooting.&lt;/p&gt;

&lt;p&gt;In this article, I’ll walk you through every step I followed, from scratch to a working live website.&lt;/p&gt;

&lt;p&gt;🧠 What You Will Learn&lt;/p&gt;

&lt;p&gt;What static website hosting is&lt;/p&gt;

&lt;p&gt;How to host a website using Amazon S3&lt;/p&gt;

&lt;p&gt;How IAM permissions affect S3 access&lt;/p&gt;

&lt;p&gt;How to troubleshoot Access Denied errors&lt;/p&gt;

&lt;p&gt;How to apply least-privilege IAM access&lt;/p&gt;

&lt;p&gt;🛠️ Technologies Used&lt;/p&gt;

&lt;p&gt;Amazon S3&lt;/p&gt;

&lt;p&gt;AWS IAM&lt;/p&gt;

&lt;p&gt;HTML &amp;amp; CSS&lt;/p&gt;

&lt;p&gt;Git &amp;amp; GitHub&lt;/p&gt;

&lt;p&gt;AWS Console&lt;/p&gt;

&lt;p&gt;📁 Project Overview&lt;/p&gt;

&lt;p&gt;The goal was to host a simple portfolio website containing:&lt;/p&gt;

&lt;p&gt;Profile section&lt;/p&gt;

&lt;p&gt;About me&lt;/p&gt;

&lt;p&gt;Project details&lt;/p&gt;

&lt;p&gt;The site is publicly accessible using an S3 static website endpoint.&lt;/p&gt;

&lt;p&gt;🧱 Step 1: Create an S3 Bucket&lt;/p&gt;

&lt;p&gt;Go to AWS Console → S3&lt;/p&gt;

&lt;p&gt;Click Create bucket&lt;/p&gt;

&lt;p&gt;Provide:&lt;/p&gt;

&lt;p&gt;Bucket name (must be globally unique)&lt;/p&gt;

&lt;p&gt;Region (I used us-east-1)&lt;/p&gt;

&lt;p&gt;Uncheck Block all public access&lt;/p&gt;

&lt;p&gt;Acknowledge the warning&lt;/p&gt;

&lt;p&gt;Click Create bucket&lt;/p&gt;

&lt;p&gt;🌐 Step 2: Enable Static Website Hosting&lt;/p&gt;

&lt;p&gt;Open the bucket&lt;/p&gt;

&lt;p&gt;Go to Properties&lt;/p&gt;

&lt;p&gt;Scroll to Static website hosting&lt;/p&gt;

&lt;p&gt;Enable it&lt;/p&gt;

&lt;p&gt;Set:&lt;/p&gt;

&lt;p&gt;Index document: index.html&lt;/p&gt;

&lt;p&gt;Save changes&lt;/p&gt;

&lt;p&gt;You will get a website endpoint URL — keep this.&lt;/p&gt;

&lt;p&gt;📄 Step 3: Upload Website Files&lt;/p&gt;

&lt;p&gt;I created a simple index.html file containing HTML and CSS for my portfolio.&lt;/p&gt;

&lt;p&gt;Folder structure:&lt;/p&gt;

&lt;p&gt;aws-s3-static-portfolio/&lt;br&gt;
│── index.html&lt;br&gt;
│── assets/&lt;br&gt;
│   └── profile.png&lt;/p&gt;

&lt;p&gt;Upload all files to the S3 bucket.&lt;/p&gt;

&lt;p&gt;🔐 Step 4: Fix Access Denied (Bucket Policy)&lt;/p&gt;

&lt;p&gt;Initially, I got this error:&lt;/p&gt;

&lt;p&gt;AccessDenied&lt;/p&gt;

&lt;p&gt;To fix this, I added a bucket policy to allow public read access.&lt;/p&gt;

&lt;p&gt;✅ Bucket Policy Used&lt;br&gt;
{&lt;br&gt;
  "Version": "2012-10-17",&lt;br&gt;
  "Statement": [&lt;br&gt;
    {&lt;br&gt;
      "Sid": "PublicReadAccess",&lt;br&gt;
      "Effect": "Allow",&lt;br&gt;
      "Principal": "&lt;em&gt;",&lt;br&gt;
      "Action": "s3:GetObject",&lt;br&gt;
      "Resource": "arn:aws:s3:::your-bucket-name/&lt;/em&gt;"&lt;br&gt;
    }&lt;br&gt;
  ]&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;After saving this, the website loaded successfully 🎉&lt;/p&gt;

&lt;p&gt;👤 Step 5: IAM User with Least Privilege&lt;/p&gt;

&lt;p&gt;To follow security best practices, I created a dedicated IAM user.&lt;/p&gt;

&lt;p&gt;IAM Steps:&lt;/p&gt;

&lt;p&gt;Go to IAM → Users&lt;/p&gt;

&lt;p&gt;Create a new user&lt;/p&gt;

&lt;p&gt;Enable AWS Management Console access&lt;/p&gt;

&lt;p&gt;Attach AmazonS3ReadOnlyAccess&lt;/p&gt;

&lt;p&gt;Login using the IAM user&lt;/p&gt;

&lt;p&gt;🔴 Initially, I couldn’t see buckets due to missing permission:&lt;/p&gt;

&lt;p&gt;s3:ListAllMyBuckets&lt;/p&gt;

&lt;p&gt;After attaching the correct policy, it worked perfectly.&lt;/p&gt;

&lt;p&gt;🧪 Step 6: Verification&lt;/p&gt;

&lt;p&gt;Website opened successfully via S3 endpoint&lt;/p&gt;

&lt;p&gt;IAM user could access only S3&lt;/p&gt;

&lt;p&gt;Images loaded correctly from assets/ folder&lt;/p&gt;

&lt;p&gt;🌍 Final Output&lt;/p&gt;

&lt;p&gt;✅ Live static website&lt;br&gt;
✅ Secure IAM permissions&lt;br&gt;
✅ Public read-only S3 access&lt;/p&gt;

&lt;p&gt;This project gave me hands-on experience with real AWS troubleshooting, not just theory.&lt;/p&gt;

&lt;p&gt;📌 Key Learnings&lt;/p&gt;

&lt;p&gt;S3 is case-sensitive (important for images)&lt;/p&gt;

&lt;p&gt;IAM permissions directly impact service visibility&lt;/p&gt;

&lt;p&gt;Bucket policies override ACLs&lt;/p&gt;

&lt;p&gt;Least privilege is critical for security&lt;/p&gt;

&lt;p&gt;🔗 GitHub Repository&lt;/p&gt;

&lt;p&gt;👉 (Add your GitHub repo link here)&lt;/p&gt;

&lt;p&gt;🏁 Conclusion&lt;/p&gt;

&lt;p&gt;This was a beginner-friendly but very practical AWS project.&lt;br&gt;
It helped me understand how AWS services connect in real scenarios.&lt;/p&gt;

&lt;p&gt;If you’re learning AWS, I highly recommend trying this project yourself 🚀&lt;/p&gt;

&lt;p&gt;GitHub--&lt;a href="https://github.com/IrfanPasha05/aws-s3-static-portfolio/tree/main" rel="noopener noreferrer"&gt;https://github.com/IrfanPasha05/aws-s3-static-portfolio/tree/main&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🙌 Thanks for reading!&lt;/p&gt;

&lt;p&gt;Feel free to connect or suggest improvements.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>s3</category>
      <category>iam</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Hosting a Static Website on Amazon S3 (Step-by-Step)</title>
      <dc:creator>irfan pasha</dc:creator>
      <pubDate>Mon, 12 Jan 2026 09:51:08 +0000</pubDate>
      <link>https://forem.com/irfanpasha/hosting-a-static-website-on-amazon-s3-step-by-step-26k9</link>
      <guid>https://forem.com/irfanpasha/hosting-a-static-website-on-amazon-s3-step-by-step-26k9</guid>
      <description>&lt;p&gt;Hosting a static website using Amazon S3 is a simple and effective way to make static content publicly available without managing servers. In this article, I’m sharing the exact steps I followed to host my static website using Amazon S3.&lt;/p&gt;

&lt;p&gt;Project Overview&lt;/p&gt;

&lt;p&gt;This project demonstrates hosting a static website using Amazon S3 Static Website Hosting. The website contains static HTML and image files and is publicly accessible through an S3 website endpoint.&lt;/p&gt;

&lt;p&gt;Steps I Followed&lt;br&gt;
Step 1: Create an S3 Bucket&lt;/p&gt;

&lt;p&gt;I logged in to the AWS Management Console, opened the Amazon S3 service, and created a new S3 bucket with a unique name in the us-east-1 region.&lt;/p&gt;

&lt;p&gt;Step 2: Upload Website Files&lt;/p&gt;

&lt;p&gt;After creating the bucket, I opened it and uploaded the static website files, including:&lt;/p&gt;

&lt;p&gt;index.html&lt;/p&gt;

&lt;p&gt;Image files&lt;/p&gt;

&lt;p&gt;Step 3: Enable Static Website Hosting&lt;/p&gt;

&lt;p&gt;From the Properties tab of the S3 bucket, I enabled Static website hosting, configured index.html as the index document, and saved the changes.&lt;/p&gt;

&lt;p&gt;Step 4: Allow Public Access&lt;/p&gt;

&lt;p&gt;I navigated to the Permissions tab and disabled Block all public access, acknowledging the warning to allow public access.&lt;/p&gt;

&lt;p&gt;Step 5: Configure Bucket Policy&lt;/p&gt;

&lt;p&gt;I added a bucket policy to allow public read access by granting the s3:GetObject permission so that users can view the website files.&lt;/p&gt;

&lt;p&gt;Step 6: Verify Website Access&lt;/p&gt;

&lt;p&gt;I copied the Static website endpoint from the bucket properties and opened it in a web browser to confirm the website loaded successfully.&lt;/p&gt;

&lt;p&gt;Live Website URL&lt;br&gt;
&lt;a href="http://irfanpasha1234.s3-website-us-east-1.amazonaws.com" rel="noopener noreferrer"&gt;http://irfanpasha1234.s3-website-us-east-1.amazonaws.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Conclusion&lt;/p&gt;

&lt;p&gt;By following these steps, I successfully hosted a static website on Amazon S3. This approach is simple, cost-effective, and ideal for hosting static content such as portfolios and basic websites.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>s3</category>
      <category>bigneer</category>
      <category>website</category>
    </item>
    <item>
      <title>My Journey into AWS &amp; DevOps: Getting Started with Hands-On Learning</title>
      <dc:creator>irfan pasha</dc:creator>
      <pubDate>Sun, 11 Jan 2026 15:11:20 +0000</pubDate>
      <link>https://forem.com/irfanpasha/my-journey-into-aws-devops-getting-started-with-hands-on-learning-1bcp</link>
      <guid>https://forem.com/irfanpasha/my-journey-into-aws-devops-getting-started-with-hands-on-learning-1bcp</guid>
      <description>&lt;h2&gt;
  
  
  👋 Introduction
&lt;/h2&gt;

&lt;p&gt;Hi everyone! I’m Irfan, an AWS &amp;amp; DevOps beginner from India.&lt;br&gt;&lt;br&gt;
I recently started my cloud journey and decided to learn through &lt;strong&gt;hands-on projects&lt;/strong&gt; rather than just theory.&lt;/p&gt;




&lt;h2&gt;
  
  
  ☁️ Why AWS &amp;amp; DevOps?
&lt;/h2&gt;

&lt;p&gt;I chose AWS and DevOps because:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cloud skills are in high demand&lt;/li&gt;
&lt;li&gt;DevOps focuses on automation and real-world problem solving&lt;/li&gt;
&lt;li&gt;AWS provides a strong ecosystem to build and deploy projects&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🛠️ What I’m Learning Right Now
&lt;/h2&gt;

&lt;p&gt;Currently, I’m learning:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AWS basics (EC2, S3, IAM, VPC)&lt;/li&gt;
&lt;li&gt;Linux fundamentals&lt;/li&gt;
&lt;li&gt;Git &amp;amp; GitHub&lt;/li&gt;
&lt;li&gt;Basic networking concepts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I’m also working on &lt;strong&gt;small practical projects&lt;/strong&gt; like hosting static websites and deploying applications on AWS.&lt;/p&gt;




&lt;h2&gt;
  
  
  🎯 My Goal
&lt;/h2&gt;

&lt;p&gt;My goal is to become a &lt;strong&gt;cloud/DevOps engineer&lt;/strong&gt; by building real projects, documenting my learning, and sharing knowledge with the community.&lt;/p&gt;




&lt;h2&gt;
  
  
  🤝 Let’s Connect
&lt;/h2&gt;

&lt;p&gt;I’ll be sharing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AWS hands-on projects&lt;/li&gt;
&lt;li&gt;DevOps learning notes&lt;/li&gt;
&lt;li&gt;Troubleshooting experiences&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you’re also learning AWS or DevOps, let’s connect and grow together 🚀&lt;/p&gt;

</description>
      <category>aws</category>
      <category>devops</category>
      <category>beginners</category>
      <category>learning</category>
    </item>
    <item>
      <title>Hosting and Streaming a Video Using AWS S3 (Beginner Guide)</title>
      <dc:creator>irfan pasha</dc:creator>
      <pubDate>Sun, 11 Jan 2026 14:24:19 +0000</pubDate>
      <link>https://forem.com/irfanpasha/hosting-and-streaming-a-video-using-aws-s3-beginner-guide-k48</link>
      <guid>https://forem.com/irfanpasha/hosting-and-streaming-a-video-using-aws-s3-beginner-guide-k48</guid>
      <description>&lt;h1&gt;
  
  
  🚀 Hosting and Streaming a Video Using AWS S3 (Step-by-Step Guide)
&lt;/h1&gt;

&lt;p&gt;As part of my AWS learning journey, I built a simple project to &lt;strong&gt;host and stream a video using Amazon S3&lt;/strong&gt; and documented the entire process using &lt;strong&gt;Git and GitHub&lt;/strong&gt;.&lt;br&gt;
This article walks through every step — from S3 configuration to pushing the project to GitHub.&lt;/p&gt;


&lt;h2&gt;
  
  
  🧩 Project Overview
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Goal:&lt;/strong&gt;&lt;br&gt;
Host a video on AWS S3 and play it in a web browser using HTML.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What I learned:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Configuring public access in S3&lt;/li&gt;
&lt;li&gt;Writing an S3 bucket policy&lt;/li&gt;
&lt;li&gt;Embedding an S3-hosted video in HTML&lt;/li&gt;
&lt;li&gt;Using Git to version control a project&lt;/li&gt;
&lt;li&gt;Pushing code to GitHub&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;
  
  
  🛠️ Tools &amp;amp; Technologies Used
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;AWS S3&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;HTML5&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Git&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GitHub&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Git Bash (Windows)&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;
  
  
  📁 Step 1: Create a Project Workspace
&lt;/h2&gt;

&lt;p&gt;To keep all my projects organized, I created a dedicated workspace:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;C:\Users\ipasha5\Projects
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Inside it, I created a project folder:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;s3-video-hosting
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ☁️ Step 2: Upload Video to AWS S3
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Created an S3 bucket (region: &lt;code&gt;us-east-1&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Uploaded the video file&lt;/li&gt;
&lt;li&gt;Disabled &lt;strong&gt;Block Public Access&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Added the following &lt;strong&gt;bucket policy&lt;/strong&gt; to allow public read access:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"Version"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2012-10-17"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"Statement"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Allow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Principal"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"*"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"s3:GetObject"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Resource"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:s3:::familyoutingvideo/*"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After this, the video was accessible via a browser URL.&lt;/p&gt;




&lt;h2&gt;
  
  
  🌐 Step 3: Create an HTML Page to Stream the Video
&lt;/h2&gt;

&lt;p&gt;Inside the project folder, I created an &lt;code&gt;index.html&lt;/code&gt; file:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="cp"&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;html&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;head&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;title&amp;gt;&lt;/span&gt;AWS S3 Video Hosting&lt;span class="nt"&gt;&amp;lt;/title&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;h2&amp;gt;&lt;/span&gt;Video Hosted on AWS S3&lt;span class="nt"&gt;&amp;lt;/h2&amp;gt;&lt;/span&gt;

    &lt;span class="nt"&gt;&amp;lt;video&lt;/span&gt; &lt;span class="na"&gt;width=&lt;/span&gt;&lt;span class="s"&gt;"320"&lt;/span&gt; &lt;span class="na"&gt;height=&lt;/span&gt;&lt;span class="s"&gt;"640"&lt;/span&gt; &lt;span class="na"&gt;controls&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;source&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://familyoutingvideo.s3.us-east-1.amazonaws.com/VID-20260110-WA0000.mp4"&lt;/span&gt; &lt;span class="na"&gt;type=&lt;/span&gt;&lt;span class="s"&gt;"video/mp4"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        Your browser does not support the video tag.
    &lt;span class="nt"&gt;&amp;lt;/video&amp;gt;&lt;/span&gt;

&lt;span class="nt"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Opening this file in a browser successfully played the video.&lt;/p&gt;




&lt;h2&gt;
  
  
  🗂️ Step 4: Initialize Git Repository
&lt;/h2&gt;

&lt;p&gt;From inside the project folder, I initialized Git:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git init
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I verified the files using:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git status
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  📌 Step 5: Add and Commit Files
&lt;/h2&gt;

&lt;p&gt;I added all files and created the first commit:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git add &lt;span class="nb"&gt;.&lt;/span&gt;
git commit &lt;span class="nt"&gt;-m&lt;/span&gt; &lt;span class="s2"&gt;"Initial commit: AWS S3 video hosting"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  🧑‍💻 Step 6: Push Project to GitHub
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Created a new repository on GitHub:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   s3-video-hosting
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Connected the local repository to GitHub:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;   git branch &lt;span class="nt"&gt;-M&lt;/span&gt; main
   git remote add origin https://github.com/YOUR_USERNAME/s3-video-hosting.git
   git push &lt;span class="nt"&gt;-u&lt;/span&gt; origin main
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now the project is live on GitHub 🎉&lt;/p&gt;




&lt;h2&gt;
  
  
  📄 README.md Content
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# AWS S3 Video Hosting&lt;/span&gt;

This project demonstrates how to host and stream a video using AWS S3.

&lt;span class="gu"&gt;## Features&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Public video hosting via S3
&lt;span class="p"&gt;-&lt;/span&gt; HTML video playback
&lt;span class="p"&gt;-&lt;/span&gt; GitHub version control

&lt;span class="gu"&gt;## Tools&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; AWS S3
&lt;span class="p"&gt;-&lt;/span&gt; HTML
&lt;span class="p"&gt;-&lt;/span&gt; Git &amp;amp; GitHub
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  🧠 Key Learnings
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Public access in S3 must be carefully configured&lt;/li&gt;
&lt;li&gt;Git errors are often simple syntax issues&lt;/li&gt;
&lt;li&gt;Organizing projects in a dedicated workspace avoids permission problems&lt;/li&gt;
&lt;li&gt;Documentation is as important as implementation&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🚀 Final Thoughts
&lt;/h2&gt;

&lt;p&gt;This project helped me understand how AWS S3 can be used for simple content hosting and how GitHub can be used to document and showcase learning projects.&lt;/p&gt;

&lt;p&gt;If you’re new to AWS or Git, this is a great beginner project to start with.&lt;/p&gt;




</description>
      <category>aws</category>
      <category>s3</category>
      <category>git</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
