Amazon AWS Web Hosting

Project Highlights

  • Focus: Hosting a Secure Personal Website Using Docker on AWS
  • Technology Stack: AWS EC2, Ubuntu, Docker, Apache2, Let's Encrypt
  • Security: HTTPS enabled with Certbot & auto-renewal
  • Year: 2025
  • Purpose: Live deployment of portfolio and Jupyter-based project documentation

AWS EC2 Roadmap: Launching Your First Ubuntu Server
  • What is AWS EC2?
  • Creating an AWS Account
  • Launching an EC2 Ubuntu Server
  • Connecting via SSH
  • Updating and Securing the Server
  • Setting Up a Static IP (Elastic IP)
  • Firewall and Port Configuration (Security Groups)
  • 🚀 My DevOps Journey: From EC2 to Secure Web Hosting

    This series of hands-on projects marks my entry into cloud computing, containerization, and secure web service deployment. It began with launching an Ubuntu server on AWS EC2, configuring security groups, managing SSH access, and setting a static IP—laying the foundation of remote server management.

    Once the server was up, I transitioned into the world of Docker, learning how to containerize services like Apache2. I explored Docker basics, including images, volumes, and networking, eventually creating isolated, portable environments that mirrored real-world DevOps workflows.

    Finally, I focused on securing the deployed services using Let's Encrypt with Certbot. I configured HTTPS for my Docker-hosted Apache2 instance, enabled automatic certificate renewal, and ensured secure access via modern encryption protocols—an essential skill for real-world deployments.

    These projects not only deepened my understanding of cloud infrastructure and security but also gave me practical experience in deploying production-grade services. It's a journey from raw infrastructure to reliable, secure, and maintainable systems—powered by curiosity and continuous learning.

    Docker Setup on AWS Ubuntu Server
  • Installing Docker on Ubuntu
  • Understanding Containers vs Images
  • Running Apache2 in a Docker Container
  • Managing Docker Containers
  • Mounting Volumes for Persistence
  • Docker Networking Basics
  • Creating a Simple Dockerfile
  • Using Docker Compose (Optional)
  • Enable HTTPS using Certbot
  • Introduction to HTTPS
  • What is Let's Encrypt?
  • Installing Certbot on Ubuntu
  • Preparing Apache2 for SSL
  • Opening Ports 80 and 443 in AWS
  • Requesting an SSL Certificate with Certbot
  • Configuring Virtual Hosts for HTTPS
  • 1. 🌐 AWS EC2 Roadmap: Launching Your First Ubuntu Server

    Date: 2025-05-23
    This document provides a step-by-step roadmap for setting up an Ubuntu Server on AWS EC2, including setup, configuration, and essential practices.

    🔍 View Embedded Jupyter Notebook

    2. 🐳 Docker Setup on AWS Ubuntu Server

    Date: 2025-05-24
    This guide walks you through setting up Docker on an AWS-hosted Ubuntu server, configuring it to run web services such as Apache2 inside a containerized environment. This setup is ideal for learning containerization, deploying isolated services, and practicing DevOps principles.

    🔍 View Embedded Jupyter Notebook

    3. 🔐 Enabling HTTPS on an AWS-Hosted Website with Docker and Apache2

    Date: 2025-05-27
    Enable HTTPS using Let's Encrypt and Certbot for a Docker-hosted Apache2 web server on Ubuntu (AWS EC2).

    🔍 View Embedded Jupyter Notebook

    Hosting This Website: From Concept to Deployment

    This very website you're browsing was built and deployed using the methods covered in the previous sections. From launching a virtual machine on AWS EC2 to containerizing the web server with Docker, every step reflects hands-on implementation of DevOps principles.

    The site is served by an Apache2 server running inside a Docker container on an Ubuntu instance. To ensure secure access, HTTPS has been enabled via Let's Encrypt using Certbot, with automatic certificate renewal in place.

    This setup not only supports my projects and portfolio but also demonstrates practical deployment skills—transforming knowledge into a live, resilient online presence.