Teaching Sharing

Practical Cloud Computing: Hands-on Examples for Beginners

cloud computing classes,cloud computing course,cloud computing education
Ailsa
2026-06-25

cloud computing classes,cloud computing course,cloud computing education

Learning by Doing: Practical Cloud Computing

Diving into the world of cloud computing can feel like standing at the base of a mountain. There are countless services, acronyms like IaaS, PaaS, and SaaS, and a dizzying array of options from major providers. Many beginners get lost in theory, spending weeks reading about virtual machines and storage buckets without ever actually building anything. However, the most effective way to learn is through hands-on experience. Instead of just memorizing concepts, you gain a tangible understanding of how cloud infrastructure works. This approach is the cornerstone of effective cloud computing education. By completing small, manageable projects, you build confidence and a practical skill set that is immediately applicable. This article is designed to guide you through that process, taking you from zero to deploying a simple web application and using cloud storage. We will use the major public cloud providers—Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP)—as our playground. The goal is not to become an expert overnight, but to demystify the cloud by providing clear, step-by-step examples that you can follow along with. This practical journey is far more valuable than any series of lectures, as it teaches you to solve real-world problems. For instance, consider a small e-commerce startup in Hong Kong that needed to scale its operations quickly. Instead of investing in expensive on-premise servers, they attended several cloud computing classes that emphasized hands-on labs. Within two weeks, they had a prototype of their inventory management system running on a virtual machine, demonstrating the incredible speed and flexibility the cloud offers. This is the power of learning by doing.

Setting Up a Cloud Account (AWS, Azure, or GCP)

Creating a Free Tier Account

Your first practical step is to create a free tier account with AWS, Azure, or GCP. These providers offer a generous set of services for free for the first 12 months (in the case of AWS) or with a limited amount of usage each month (like Azure and GCP). This allows you to experiment without incurring costs. For example, to start on AWS, go to aws.amazon.com/free. You’ll need an email address, a phone number for verification, and a credit card. The card is for identity verification purposes, but as long as you stay within the free tier limits, you won't be charged. The process is similar for Azure (azure.microsoft.com/en-us/free) and GCP (cloud.google.com/free). During signup, you will receive a verification code via SMS or voice call. This step is crucial for security. Once your account is active, you are ready to begin. In Hong Kong, a local tech startup founder I consulted with used the free tier on GCP to build a prototype for a logistics tracking application. He used the $300 in free credits effectively for two months, validating his idea without any upfront financial risk. This demonstrates how accessible cloud computing can be. After creating your account, the next step is to understand the console.

Navigating the Cloud Console

The cloud console is your central hub for managing all your resources. It is a web-based interface that allows you to launch virtual machines, create databases, set up storage, and configure networking. For AWS, this is the AWS Management Console. For Azure, it is the Azure Portal. For GCP, it is the Google Cloud Console. Each console has a similar structure: a top search bar, a navigation menu on the left, and a dashboard for overview. The key is to learn how to use the search bar effectively. Instead of memorizing menus, type the service you need (e.g., "EC2", "Virtual Machines", "Compute Engine") into the search bar. This saves enormous time. For instance, when managing networking, you might type "VPC" (AWS), "Virtual Networks" (Azure), or "VPC" (GCP). The consoles also provide documentation and quickstarts directly within the interface. A common mistake for beginners is to get overwhelmed by the sheer number of services. Remember, you only need a handful for basic projects. Focus on understanding the core services: compute (VMs), networking (firewalls, IP addresses), and storage (buckets). In Hong Kong, many universities offering a cloud computing course start their labs by teaching students to navigate the Azure Portal. They find that once students understand the layout and search functionality, the fear of the console disappears, and they become much more efficient. The console is your cockpit; learning its layout is the first step to flying.

Deploying a Simple Web Application

Using a Virtual Machine (EC2, Virtual Machines, Compute Engine)

A virtual machine (VM) is a software-based computer that runs on physical servers in a cloud data center. It is the most fundamental compute resource. Let's walk through launching one. On AWS, you would use EC2 (Elastic Compute Cloud). On Azure, it's "Virtual Machines," and on GCP, it's "Compute Engine." The process is surprisingly similar across all three. After logging into your console, navigate to the respective service. You'll click "Launch Instance" or "Create VM." The first choice is the operating system. For beginners, Ubuntu 22.04 LTS is an excellent choice because it's free, well-documented, and has a large community. Next, you choose an instance type. For the free tier, you will likely select the smallest option (e.g., t2.micro on AWS, B1s on Azure, e2-micro on GCP). These have 1 vCPU and 1 GB of RAM, which is sufficient for a simple web server. You will also need to create or select a key pair for SSH access. This is a security credential that allows you to connect to your VM remotely. Save the private key (a .pem file) in a safe location. Finally, you configure your network settings. By default, your VM will not allow any incoming traffic. This is a critical security feature. You will need to add a rule to allow SSH (port 22) from your current IP address. Optionally, you can also add a rule for HTTP (port 80) and HTTPS (port 443) to allow web traffic. Launch the instance, and within a minute, your VM will be running. You will be assigned a public IP address. In a recent cloud computing education program in Hong Kong, students were tasked with deploying a simple HTML page on a VM. They found the process of launching a VM on Azure to be particularly beginner-friendly, as the portal guides you through the steps with clear documentation.

Configuring Networking

Your VM is not useful if no one can access it. This is where networking configurations come into play. In cloud computing, networking is managed through Virtual Private Clouds (VPCs) or Virtual Networks. When you launched your VM, it was placed inside a default VPC. However, you need to explicitly open the doors to allow traffic. This is done via Security Groups (AWS) or Network Security Groups (Azure) or Firewall Rules (GCP). A Security Group acts as a virtual firewall. It controls inbound and outbound traffic to your VM. In our previous step, we allowed SSH access. Now, we need to allow web traffic. In the AWS console, go to the EC2 dashboard and select "Security Groups." Find the group attached to your VM. Click "Edit inbound rules." Add a new rule: Type=HTTP, Protocol=TCP, Port Range=80, Source=0.0.0.0/0. This allows anyone on the internet to access your web server on port 80. A more secure approach is to limit the source to a specific IP range, but for a simple test, allowing all is acceptable. The same concept applies to Azure (Add inbound port rule for HTTP, Source=Any) and GCP (Add firewall rule to allow ingress on tcp:80). Without this step, your web server will be installed but unreachable from the internet. A logistics company in Hong Kong, after completing a series of cloud computing classes, successfully configured a network load balancer to distribute traffic across multiple VMs. This improved their website reliability during peak shopping seasons. Understanding these basic networking concepts is essential for any cloud practitioner.

Installing and Configuring a Web Server (e.g., Apache, Nginx)

Now that your VM is running and your network is configured to allow web traffic, you can install a web server. Apache and Nginx are the two most popular web servers. We will use Apache for this example because it's straightforward for beginners. Connect to your VM using SSH. On Windows, you might use PuTTY or the Windows Subsystem for Linux (WSL). On Mac or Linux, you can use the terminal directly. Use the command: ssh -i /path/to/your-key.pem ubuntu@your-public-ip (the username may vary; for Ubuntu it is usually 'ubuntu'). Once connected, update your package list: sudo apt update. Then, install Apache: sudo apt install apache2 -y. Once installed, Apache will start automatically. You can test it by opening your web browser and navigating to your public IP address (e.g., http://your-public-ip). You should see the default Apache welcome page. This is a huge milestone—you have deployed a live web server on the cloud! For Nginx, the process is similar: sudo apt install nginx -y. The default page for Nginx is different, but the principle is the same. Configuring the server allows you to change the default document root or set up virtual hosts. For a beginner, the default installation is sufficient. A recent graduate of a cloud computing bootcamp in Hong Kong used this exact method to host a personal portfolio website. He later migrated it to Nginx to handle higher traffic, showcasing how hands-on learning leads to greater understanding.

Deploying a Basic HTML Website

The final step in this part is to replace the default Apache welcome page with your own HTML website. The default document root for Apache on Ubuntu is typically /var/www/html. You will need to navigate to this directory on your VM. Use the command: cd /var/www/html. First, remove the default index.html file: sudo rm index.html. Now, create a new file, for example, index.html, using a text editor like nano: sudo nano index.html. Paste in a simple HTML structure. For example:

<!DOCTYPE html>
<html>
<head>
    <title>Hello Cloud</title>
</head>
<body>
    <h1>My First Cloud-Hosted Website!</h1>
    <p>This site is running on an AWS EC2 instance in the ap-southeast-1 region (Singapore), serving data to users in Hong Kong.</p>
</body>
</html>

Save the file (Ctrl+X, then Y, then Enter in nano). Now, refresh your browser at your VM's public IP address. You should see your new page! This simple exercise teaches the core of web hosting. You have provisioned a server, secured it, installed software, and deployed content. In Hong Kong, during a recent cloud workshop, participants followed these exact steps to launch a website promoting a local charity. They were amazed that within an hour, they had a fully functional site accessible from anywhere in the world. This process demystifies the web and shows that the cloud is simply a remote computer that you can control.

Using Cloud Storage

Creating a Storage Bucket (S3, Blob Storage, Cloud Storage)

Beyond compute, cloud storage is another fundamental service. It is used to store files, images, backups, and static website content. Each provider offers an object storage service: AWS S3 (Simple Storage Service), Azure Blob Storage, and GCP Cloud Storage. A "bucket" is a container for objects (files). To create one, navigate to the respective service in your console. On AWS, go to S3 and click "Create bucket." You must choose a globally unique name (no other bucket in the world can have the same name) and a region. For users in Hong Kong, selecting a nearby region like ap-east-1 (Hong Kong) or ap-southeast-1 (Singapore) reduces latency. The bucket name must comply with DNS naming conventions (lowercase, no underscores). You also need to block public access by default for security, but for this exercise, you can keep it enabled to test. On Azure, you would create a "Storage Account" first, then inside it, create a "Blob Container" (the equivalent of a bucket). On GCP, you go to "Cloud Storage" and click "Create Bucket." The naming and region selection process is similar. Interestingly, according to a 2023 report by a Hong Kong cloud consultancy, over 60% of small-to-medium enterprises (SMEs) in Hong Kong use AWS S3 for their backup and archive needs, citing its durability and low cost. The process of creating a bucket is the foundational skill for managing files in the cloud.

Uploading and Downloading Files

Once your bucket is created, you can upload files. In the console, click your bucket name and then the "Upload" button. You can drag and drop files from your computer or use the file picker. This is useful for storing assets for your web application, like images or CSS files. For example, you could upload a logo image to your bucket. Then, you can generate a URL for that file to use in your website's HTML. To download a file, you simply click on the file name and select "Download" or "Open." For programmatic access, cloud providers offer SDKs (Software Development Kits) for various programming languages like Python, Java, and JavaScript. Using the AWS CLI (Command Line Interface) installed on your local machine, you can upload a file with the command: aws s3 cp myfile.jpg s3://your-bucket-name/. Downloading is similar: aws s3 cp s3://your-bucket-name/myfile.jpg .. This scripting capability is vital for automation. A developer in Hong Kong, who had attended several cloud computing classes, automated the backup of her local database to an S3 bucket using a simple cron job script. This saved her hours of manual work each week.

Configuring Permissions

By default, files in your storage bucket are private. This is a good security practice. However, for a web application, you might want to make certain files (like images) publicly accessible. This is done through bucket policies or Access Control Lists (ACLs). In the AWS S3 console, you can go to your bucket's "Permissions" tab. Under "Block public access (bucket settings)," you can uncheck the settings to allow public access. Then, you add a **Bucket Policy**. This is a JSON document that defines who can access your bucket and what they can do. For example, to allow anyone to read objects in your bucket (e.g., for a website), you would use a policy like this:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "PublicReadGetObject",
      "Effect": "Allow",
      "Principal": "*",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::your-bucket-name/*"
    }
  ]
}

This policy explicitly grants read access to everyone (the `*` principal). In Hong Kong, many online retailers use this model to serve product images from S3 while keeping their inventory database private. A recent **cloud computing course** in Hong Kong taught students how to implement the principle of least privilege by granting only the minimum permissions necessary. They learned to differentiate between public read access, private access, and pre-signed URLs (temporary access for specific users). Understanding permissions is critical to avoid data breaches and accidental billing shocks.

Continuing Your Cloud Journey

You have now completed a full cycle: you set up an account, launched a VM, deployed a web application, and used cloud storage. This is a massive achievement. The skills you've learned are directly transferable to more advanced topics. From here, you can explore managed database services like Amazon RDS or Cloud SQL, serverless computing with AWS Lambda or Azure Functions, and containerization with Docker and Kubernetes. The key to mastery is consistent practice. Set aside time each week to build something new. The best cloud computing education comes from working on small, self-imposed projects. For instance, try to build a personal blog using a cloud database to store your posts. Or, create a serverless function that automatically resizes images uploaded to your storage bucket. The Hong Kong tech ecosystem is rich with opportunities for cloud practitioners. According to a 2024 survey by the Hong Kong Computer Society, cloud skills are among the top three most in-demand technical skills in the region. By starting with hands-on examples, you ensure that your learning is deep, practical, and aligned with industry needs. Continue to explore, fail safely, and learn from each deployment. The cloud is not a destination, but a platform for continuous innovation.