INTRODUCTION
Cloud computing is about using powerful computers hosted online instead of relying on your personal device. Think of it like renting a house: you can use it when you need it, without worrying about building or maintaining it.
Amazon Web Services (AWS) is one of the most popular platforms for cloud computing. One of its key services is EC2 (Elastic Compute Cloud), which lets you rent virtual computers called instances. These instances allow you to run applications, websites, or other services directly from the cloud.
- Launching an EC2 Instance
Here are the steps I followed to launch my virtual server:
1.Logged into the AWS Management Console.
2.Navigated to Services > EC2 > Launch Instance.
3.Named the instance: my-nginx33.
4.Selected Ubuntu Server 22.04 LTS as the operating system.
.Ubuntu is a version of Linux widely used for cloud servers.
5.Chose instance type: t2.micro (eligible for the AWS Free Tier).
6.Created a new key pair called " my-2P-key " and i downloaded the .pem file. Then after downloading the ".pem " file , it will appear/ becomes " my-2P-key.pem "
This file acts as a secure key for connecting to the server.
7.Configured security group rules to allow:
SSH on port 22 for remote access.
HTTP on port 80 for web access.
8.Clicked Launch Instance.
Analogy: The EC2 instance is like renting a small apartment in the cloud, and the security group is like deciding which doors and windows are unlocked for visitors.
3. Connecting to EC2 Using GitBash
Once my instance was running, I connected to it from my computer:
1.Retrieved the public IPv4 address from the AWS console.
IPv address-18.207.154.160
2.Opened GitBash (Command Prompt/PowerShell also works).
Type : cd downloads
Type : chmod 400 my-2P-key.pem
3.Entered the SSH command:
ssh -i "C:\Users\Downloads\my-2P-key.pem" ubuntu@
Example:
ssh -i my-2P-key.pem" ubuntu@18.207.154.160
4.Accepted the connection when prompted.
When the connection is been prompted, Type : yes
SSH is like a secure remote key that unlocks your apartment in the cloud and lets you control it.
4. Updating Ubuntu Server
Once inside the server, I updated its package list to ensure the latest software versions and security patches were available:
sudo apt update
This is like refreshing the app store on your phone before downloading or upgrading apps.
5. Installing and Configuring NGINX Web Server
With the server ready, I installed and configured NGINX:
Install NGINX:
sudo apt install nginx -y
Start the NGINX service:
sudo systemctl start nginx
Check if it is running:
sudo systemctl status nginx
Enable NGINX to start automatically on reboot:
sudo systemctl enable nginx
NGINX is now running and able to serve webpages from the server.
6. Testing and Customizing the Web Page
To test the installation, I opened my browser and typed:
http://
This showed the default NGINX welcome page, confirming the web server was active.
Next, I customized the page:
1.Opened the default web file:
sudo nano /var/www/html/index.nginx-debian.html
2.Deleted the existing content using Ctrl + K.
3.Added my own message:
4.Saved and exited by pressing Ctrl + X, then Y, then Enter.
Refreshing the browser displayed my new page. Editing this file was like changing the welcome sign on the front of a Pharmacy premise to make it personal.
- Full Quick Command Summary
Below are the main commands I used in this project:
sudo apt update
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
sudo nano /var/www/html/index.nginx-debian.html
GitBash SSH example:
ssh -i "C:\Users\John\Downloads\nginx-key.pem" ubuntu@18.207.154.160
Conclusion
This project gave me hands-on experience with launching and managing a cloud server. I learned how to:
Launch an EC2 instance on AWS.
Connect to it securely using SSH.
Install and configure NGINX on Ubuntu.
Edit and customize a web page.
It was more than just a technical exercise — it gave me a deeper understanding of how cloud infrastructure, Linux commands, and web servers work together in real-world scenarios.
Completing this project boosted my confidence in working with AWS, Linux, and NGINX, and it opened the door for me to build more advanced cloud-based projects in the future.
Top comments (0)