Kokil Thapa - Professional Web Developer in Nepal
Freelancer Web Developer in Nepal with 15+ Years of Experience

Kokil Thapa is an experienced full-stack web developer focused on building fast, secure, and scalable web applications. He helps businesses and individuals create SEO-friendly, user-focused digital platforms designed for long-term growth.

Oracle Cloud Free Tier for Learning

By Kokil Thapa | Last reviewed: August 2026

You want real cloud infrastructure to practice on—not toy sandboxes that expire after twelve months—but your budget is closer to a Kathmandu café bill than an AWS enterprise invoice. Oracle Cloud Free Tier for Learning fills that gap with genuinely always-free compute, databases, and storage that stay active as long as your account remains in good standing. If you have already worked through a home lab DevOps project list, OCI is the next logical step: you get ARM Ampere instances with enough RAM to run Docker, Kubernetes, or a full Laravel stack without paying a rupee. This guide covers what you actually receive, how to sign up without account rejection, practical learning projects, and the billing traps that catch beginners.

What is included in Oracle Cloud Free Tier for Learning?

Oracle splits its free offering into two layers, and confusing them is the first mistake new learners make. The trial gives new accounts $300 in cloud credits valid for 30 days. You can spin up larger shapes, test GPU instances, or experiment with paid services during that window. The Always Free tier is separate: those resources remain available indefinitely, even after the trial ends, as long as you stay within the published limits and keep the account active.

For a developer learning infrastructure, the Always Free compute allocation is the headline feature. You receive two VM.Standard.E2.1.Micro instances (AMD, 1/8 OCPU, 1 GB RAM each) plus Ampere A1 Flex capacity totalling up to 4 OCPUs and 24 GB memory across one or more instances. That ARM allocation alone exceeds what AWS, Azure, or Google Cloud offer for free—and it is enough to run a modest production-like environment: Nginx, PHP 8.3, MySQL 8, Redis 7, and a Laravel 12 application with room to spare.

Oracle Cloud Free Tier for Learning — Resource Map30-Day Trial$300 cloud creditsAny paid OCI serviceExpires after 30 daysAlways FreeNever expiresHome region onlyAccount must stay activeCompute2x AMD Micro VMs4 OCPU / 24 GB ARMDatabase2x Autonomous DBOracle + MySQLStorage & Network200 GB block volumeVCN, LB, 10 TB egress/mo
Oracle Cloud Free Tier for Learning splits trial credits from Always Free resources that remain available after the 30-day period.

Beyond compute, the Always Free tier includes resources that map directly to skills employers expect:

  • Autonomous Database: two Always Free instances (Oracle ATP and ADW, or MySQL HeatWave)—useful for SQL tuning, backup drills, and comparing managed Oracle vs self-hosted MySQL 8.
  • Block storage: 200 GB total across boot and attached volumes.
  • Object storage: 20 GB standard tier—enough for static assets, backup archives, or Terraform state files stored remotely.
  • Load balancer: one flexible load balancer at 10 Mbps—sufficient for learning blue-green deployment patterns.
  • Networking: one VCN, multiple subnets, security lists, and a small pool of public IPv4 addresses.
  • Observability: monitoring and notifications within Always Free limits.

All Always Free resources deploy in your home region—the region you select at signup. Pick carefully. For learners in Nepal, ap-sydney-1 or ap-mumbai-1 typically offer the lowest latency, though Mumbai capacity for Ampere instances occasionally runs tight. Check availability before committing.

How do you sign up for Oracle Cloud Free Tier without getting blocked?

Account rejection is common, and Oracle's fraud-prevention system is aggressive. A pattern I have seen repeatedly among developers in Kathmandu: signup succeeds on a mobile hotspot but fails on a residential ISP block, or vice versa. Treat signup as a production deployment—prepare before you click.

Pre-signup checklist

  1. Use a personal email you control long-term (Gmail, Outlook—not a disposable address).
  2. Have a valid credit or debit card with international online payments enabled. Oracle runs a temporary $1 authorisation; prepaid cards often fail.
  3. Match your account name, billing address, and cardholder name exactly.
  4. Choose your home region before creating resources—you cannot migrate Always Free workloads later.
  5. Disable VPN during signup unless you consistently use the same exit country as your billing address.

Post-signup first steps

Once inside the OCI Console, work in this order:

  1. Enable multi-factor authentication on your root or admin account immediately.
  2. Create a compartment named learning-lab rather than building in the root compartment.
  3. Create a dedicated IAM user for daily CLI and Console work; do not use the tenancy administrator for routine tasks.
  4. Set a billing budget alert at $1—even on Always Free—to catch accidental paid resource creation early.
  5. Install the OCI CLI on your local Ubuntu or macOS machine:
bash -c "$(curl -L https://raw.githubusercontent.com/oracle/oci-cli/master/scripts/install/install.sh)"
oci setup config
oci iam region list --output table

Generate an API key pair under your IAM user, upload the public key in the Console, and store the private key with restrictive permissions (chmod 600). You will need tenancy OCID, user OCID, fingerprint, and region in your ~/.oci/config file. If you already manage servers locally, the workflow mirrors SSH key setup described in guides like Ubuntu server setup for PHP applications—generate keys locally, upload the public half, protect the private half.

What are the best Oracle Cloud Free Tier projects for developers?

The free tier rewards structured learning. Randomly clicking "Create Instance" teaches the Console, not cloud engineering. Pick a project with a defined outcome and a teardown plan.

Project 1: Two-tier Laravel staging environment

Split your Ampere allocation across two instances: one for the web tier (Nginx + PHP 8.3 + Laravel 12), one for data (MySQL 8.4 or PostgreSQL 17 + Redis 7). This mirrors real client architectures I deploy on VPS infrastructure—application and database separated by private subnet rules. Practice security list configuration, SSH hardening, and server security hardening patterns you would apply on any production host.

Project 2: Kubernetes with OKE

Oracle Container Engine for Kubernetes (OKE) has an Always Free cluster option on Ampere worker nodes. Deploy a sample app, expose it through the free load balancer, and practice rolling updates. If you have already launched a single VM on AWS, the conceptual jump from EC2 for beginners to managed Kubernetes is easier when you are not paying hourly cluster fees elsewhere.

Project 3: Infrastructure as Code with Terraform

Define your VCN, subnets, compute instances, and security lists in Terraform using the Oracle provider. Store state in the free object storage bucket. This teaches idempotent provisioning—a skill that transfers directly to AWS, Azure, and GCP. A solid companion read is the Terraform infrastructure-as-code practical guide on this site; swap the AWS provider block for hashicorp/oci and the same mental model applies.

OCI Learning Path — Four Stages1. Sign Up2. IAM +Compartment3. BuildProject4. Monitor& Tear DownBeginner TrackSingle Ampere VM + LEMP stackAdvanced TrackOKE cluster + Terraform + CI/CDSet $1 budget alert before any trial resourceDelete non-Always-Free shapes before day 30
Structured Oracle Cloud Free Tier for Learning path from account setup through project build, monitoring, and safe teardown.

Project 4: Autonomous Database comparison lab

Provision one Always Free Autonomous Transaction Processing instance and one MySQL HeatWave instance. Import the same sample schema into both. Compare connection methods, backup behaviour, and query performance. For PHP developers, this clarifies when managed database services justify their operational overhead versus self-managed MySQL on a compute instance.

Project 5: Object storage and static site hosting

Upload a static portfolio or documentation site to an object storage bucket, enable public read on specific prefixes, and front it with the free load balancer or a custom domain via DNS. Total cost: zero. You learn IAM policies, bucket lifecycle rules, and CDN-adjacent patterns without touching a compute instance.

How does Oracle Cloud Free Tier compare to AWS, Azure, and GCP free tiers?

Every hyperscaler advertises "free," but the terms differ sharply. Oracle's Always Free compute—especially the Ampere ARM allocation—is the outlier in raw capacity. AWS and Google Cloud free tiers are largely time-limited (12 months) for compute, with smaller permanent free quotas afterward. Azure offers limited always-free services but nothing comparable to 4 OCPUs and 24 GB RAM.

ProviderAlways-free computeTrial creditsBest for learningCommon gotcha
Oracle Cloud2 AMD micro VMs + 4 OCPU / 24 GB ARM; 2 Autonomous DBs$300 for 30 daysLong-running labs, ARM workloads, managed DB practiceHome region locked; Ampere capacity varies by region
AWS750 hrs/mo t2/t3.micro for 12 months only; then minimalFree tier tied to 12-month account ageBroadest service catalog, industry certification pathsAccidental charges after 12 months; elastic IP fees
Azure750 hrs B1s for 12 months; limited permanent services$200 for 30 days (new accounts).NET ecosystem, Azure DevOps integrationComplex pricing calculator; region-specific limits
Google Cloude2-micro always free (1 per region, select regions)$300 for 90 daysGKE experimentation, BigQuery analyticsAlways-free e2-micro is very small (0.25 vCPU, 1 GB)

For a Nepali developer learning on a budget—where Rs 2,000/month (~USD 15) for a VPS already feels significant—Oracle's Always Free tier removes the ticking clock that makes AWS free tier anxiety so common. The trade-off is a smaller third-party ecosystem: fewer Stack Overflow answers, fewer Nepal-specific tutorials, and occasional capacity shortages on Ampere in popular regions. You are trading community volume for hardware generosity.

Always-Free Compute RAM Comparison24 GBOracle ARM2 GBAWS t3.micro1.75 GBAzure B1s1 GBGCP e2-micro0 GB12 GB24 GBOracle Always Free ARM leads for long-running learning workloads
Oracle Cloud Free Tier for Learning offers substantially more always-free RAM via Ampere A1 than competing hyperscaler permanent free compute tiers.

How do you avoid unexpected charges on Oracle Cloud while learning?

Always Free does not mean "everything is free." It means specific resource shapes in your home region stay free. Step outside those boundaries—even accidentally—and Oracle bills against your card. I have seen developers get charged for outbound data beyond free limits, block storage over 200 GB, or paid shapes left running after the trial window.

Resources that commonly trigger charges

  • Paid compute shapes: launching VM.Standard.E4.Flex or x86 Flex instances without confirming Always Free eligibility.
  • Extra public IPv4 addresses: reserved IPs attached to stopped instances still count.
  • Block volume over 200 GB: expanding boot volumes beyond the Always Free cap.
  • Outbound data transfer: 10 TB/month is generous, but heavy video streaming or open proxy misconfiguration can approach limits on busy labs.
  • Post-trial paid resources: anything created with trial credits that is not an Always Free shape will bill once credits expire.

Cost-protection habits

  1. Create a $1 budget with email notification in Governance → Budgets.
  2. Tag every resource with project=learning and review the cost analysis dashboard weekly.
  3. Before day 30 of the trial, audit all running resources and terminate anything not on the Always Free resources list published by Oracle.
  4. Use the OCI CLI to list running instances across compartments:
oci compute instance list --compartment-id ocid1.compartment.oc1..aaaa...
  --lifecycle-state RUNNING --output table

oci compute instance list-vnics --instance-id ocid1.instance.oc1..aaaa...
  --query "data[].{\"PublicIP\":\"public-ip\"}"

Stop instances you are not actively using. Always Free covers stopped instance reservations, but attached block storage and reserved public IPs still consume quota—and misconfigured restart policies can leave paid shapes running overnight.

Will This OCI Resource Cost Money?Creating a resource?Always Free shape?Paid shape — STOPIn home region?Free — proceedWrong region — STOPTrial ended + paid shape?You will be billed
Decision flow for Oracle Cloud Free Tier for Learning—verify Always Free shape eligibility and home region before creating any resource.

How do you deploy a Laravel application on Oracle Cloud Free Tier?

This walkthrough assumes one Ampere A1 Flex instance with 2 OCPUs and 12 GB RAM—leaving half your ARM quota for a database server or a second project. Ubuntu 24.04 LTS is the sensible base image.

Step 1: Launch and secure the instance

In the Console, create a VM using shape VM.Standard.A1.Flex with Ubuntu 24.04. Assign a public IP. Open ports 22, 80, and 443 in the security list—not the entire Internet on port 22 if you can restrict to your current IP. SSH in and run baseline hardening: create a non-root user, install fail2ban, enable UFW allowing only required ports.

Step 2: Install the LEMP stack

sudo apt update && sudo apt upgrade -y
sudo apt install -y nginx mysql-server redis-server \
  php8.3-fpm php8.3-mysql php8.3-redis php8.3-xml \
  php8.3-mbstring php8.3-curl php8.3-zip php8.3-gd unzip git

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

Step 3: Deploy Laravel 12

cd /var/www
sudo git clone https://github.com/your-org/your-app.git myapp
cd myapp
composer install --no-dev --optimize-autoloader
cp .env.example .env
php artisan key:generate

sudo mysql -e "CREATE DATABASE myapp;
  CREATE USER 'myapp'@'localhost' IDENTIFIED BY 'strong-password';
  GRANT ALL ON myapp.* TO 'myapp'@'localhost';"

php artisan migrate --force
php artisan config:cache && php artisan route:cache

Point Nginx at /var/www/myapp/public, set PHP-FPM to socket pass, and issue a Let's Encrypt certificate with Certbot—the same workflow I use on client VPS deployments. For queue workers, add a systemd unit running php artisan queue:work. On 12 GB RAM you can run Horizon if Redis is local.

Step 4: Automate with Git-based deploys

Once the manual deploy works, add a GitLab CI or GitHub Actions pipeline that SSHes into the instance and pulls updates—mirroring the Deployer 7 workflows I run on production Laravel sites. Keep environment secrets in the OCI Vault free tier rather than plaintext in the repo. This single project teaches compute, networking, Linux administration, PHP deployment, and CI/CD without spending anything beyond your internet connection.

Ready to start your Oracle Cloud Free Tier for Learning lab?

Oracle Cloud Free Tier for Learning is the most hardware-generous free cloud platform available in 2026, and it rewards developers who treat it like a real production environment—compartments, IAM users, budget alerts, tagged resources, and documented teardown procedures. Sign up with accurate billing details, pick a nearby home region, build one structured project (Laravel stack, OKE cluster, or Terraform lab), and audit your resources before the 30-day trial ends. The Always Free Ampere instances will still be there tomorrow, next month, and next year—giving you a permanent place to test deployments, study for OCI certification, or prototype client infrastructure before committing paid cloud budget.

If you want help designing a production-grade cloud architecture—or migrating a Laravel application from free-tier experiments to paid infrastructure with proper CI/CD—get in touch through the contact page. For broader cloud career context in Nepal, see the cloud computing salaries comparison for Nepal and keep building.

Frequently Asked Questions

Oracle Cloud Free Tier is Oracle’s no-cost cloud program for new accounts, combining Always Free resources that never expire with a one-time $300 trial credit valid for 30 days. For learning, you get real production-style services: ARM or AMD compute VMs, block storage, object storage, Autonomous Database, and networking. It suits developers who want hands-on Linux server admin, database work, CI/CD, or deploying a Laravel app without paying for AWS or a VPS first.

Yes, for Always Free resources within published limits, with no monthly charge. Oracle still requires a valid credit or debit card at signup for identity verification and may place a small temporary hold. Paid charges only apply if you create billable resources, exceed Always Free quotas, or use trial credits after they expire. Check Billing and Cost Management before provisioning anything outside the free allowance.

Always Free resources continue as long as your account stays active and compliant with Oracle’s terms. The separate $300 trial credit expires after 30 days. Idle Always Free compute instances can be reclaimed if CPU and network use stay near zero for seven days, so keep a lightweight cron ping or lab workload running.

Yes. Oracle requires a payment method at registration even for Always Free-only use. The card is used for verification, not automatic billing on free-tier resources. Use a personal card you control, set billing alerts, and tag every resource you create. In Nepal, most international Visa or Mastercard debit cards work; local bank SMS OTP failures and 3-D Secure mismatches are the usual signup blockers I hear about from students.

You can practice the same skills used on paid hosting: Ubuntu 22.04 or 24.04 on a VM, Apache or Nginx with PHP-FPM 8.3, MySQL 8.0 or PostgreSQL 17, Redis 7.x, SSL with Let’s Encrypt, Git-based deploys, and queue workers for Laravel 12. Spin up a staging site, test Deployer-style releases, configure UFW and fail2ban, and experiment with object storage for uploads. Treat it as a disposable lab, not production.

For long-term learning at zero cost, Oracle’s Always Free ARM capacity (up to 4 OCPUs and 24 GB RAM total) beats AWS’s 12-month-only free EC2 t2.micro. AWS has richer documentation and more third-party tutorials. Oracle rewards patience: ARM capacity is region-dependent and signup can be stricter. If you already know AWS from client EC2 work, Oracle adds a second cloud on your CV without a monthly bill.

New accounts typically get two AMD Micro instances (1/8 OCPU, 1 GB RAM each) plus Ampere A1 Flex capacity up to 4 OCPUs and 24 GB RAM split across VMs. That is enough for a small Laravel 12 app, MySQL, Redis, and a GitLab Runner on one ARM box. Block storage and outbound data transfer also have Always Free allowances. Exact limits are listed on Oracle’s Always Free page and can change, so verify before building architecture around them.

Sign in to the OCI Console, pick a home region during signup because some Always Free resources cannot move later, open Compute, create an Ampere A1 or AMD Micro instance, choose Ubuntu 22.04 or 24.04, upload your SSH public key, open ports 22, 80, and 443 in the subnet security list and instance VNIC rules, then SSH in as ubuntu. Run apt update, install your stack, and point a subdomain at the instance public IP for realistic DNS practice.

Common causes are duplicate accounts tied to the same email or phone, unsupported payment method, VPN or datacenter IP flagged as fraud, incomplete identity verification, or selecting a home region where Always Free is unavailable. Retry from a residential network, use a different browser, ensure your card allows international online charges, and match the billing name to the card. If verification loops, Oracle support is slow but opening a ticket with exact error text is the only reliable fix.

Yes. An Ampere A1 VM with 2 OCPUs and 12 GB RAM comfortably runs PHP 8.2 or 8.3, Laravel 12, MySQL 8.0, Redis 7.x, and a queue worker for learning. Oracle Autonomous Database is Oracle-owned, not ideal for typical Laravel MySQL workflows, so install MySQL or PostgreSQL on the VM instead. Build assets locally with Node.js 22 LTS and deploy compiled public/build artefacts if the VM has no Node, matching how I deploy on small production servers.

Home region is permanent for many free resources. ARM shapes show “Out of host capacity” in popular regions. Idle instances are reclaimed after seven days of near-zero use. Trial credits can be consumed quickly if you launch paid SKUs by mistake. Security lists have separate rules at subnet and VNIC level, so SSH works in the console but not from your laptop until both are fixed. Always set billing budget alerts on day one.

OCI bills per OCPU-hour, storage gigabyte-month, and outbound data transfer beyond Always Free quotas. A single forgotten paid compute instance can cost roughly USD 10–50 per month depending on shape and region, around Rs 1,300–6,500 at typical 2026 exchange rates. Autonomous Database and load balancers escalate faster than Micro VMs. Use compartment budgets, review the Cost Analysis dashboard weekly, and terminate trial resources you do not need before day 30.

Safe enough if you treat it like any public VPS: SSH keys only, disable password auth, patch Ubuntu monthly, configure UFW to allow only required ports, install fail2ban, and never commit .env or API keys to Git. Do not store real client data or production backups on a free lab account. Use separate compartments for experiments, rotate keys when you finish a course, and delete instances you no longer need to reduce attack surface.

You can host a low-traffic personal site, portfolio, or staging environment on Always Free compute with a free Let’s Encrypt certificate. Expect single-instance limits: no managed auto-scaling, modest CPU, and outbound bandwidth caps. For a business site with SLA expectations, paid VPS or managed hosting starting around Rs 1,500–3,000 per month (~USD 11–22) is more predictable. Free tier works best as a learning and demo environment, not client production.

Start with a repeatable baseline: one Ubuntu VM, create-user with sudo, harden SSH, install Apache and PHP-FPM 8.3, deploy a simple Laravel 12 or static site via Git, add MySQL 8.0, configure nightly mysqldump to Object Storage, and practice restore. Then add a second VM or cron job, set up GitLab CI to SSH-deploy on push, and document every step. That mirrors real client work I do on Ubuntu plus Deployer pipelines, but costs nothing while you learn.

Share this article

Quick Contact Options
Choose how you want to connect me: