The Definitive Guide to No-Cost Self-Hosting on Major Cloud Platforms
Comprehensive analysis and actionable roadmap for deploying self-hosted software on the "Always Free" tiers of major cloud providers.
The Definitive Guide to No-Cost Self-Hosting on Major Cloud Platforms

This report provides a comprehensive analysis and actionable roadmap for deploying self-hosted software on the "Always Free" tiers of major cloud providers without incurring extra costs. The primary objective is to deliver a guide that navigates the complexities of cloud provider offerings, identifies suitable open-source applications, and outlines strategic deployment best practices. A critical distinction is made throughout this analysis between temporary "Free Trials," which typically last for 12 months or offer a one-time credit, and permanent "Always Free" tiers, which provide a baseline of services indefinitely. This report focuses exclusively on the latter to ensure the viability of long-term, zero-cost operations, addressing a common point of confusion that often leads to unexpected billing for cloud users.
A Strategic Comparison of "Always Free" Cloud Tiers for Self-Hosting The landscape of free cloud offerings is not uniform; each provider has tailored its free tier to serve specific strategic goals. Understanding these differences is paramount to selecting the correct platform for a given self-hosting workload. This section provides a foundational analysis of the "Always Free" tiers from Google Cloud Platform (GCP), Amazon Web Services (AWS), Microsoft Azure, and Oracle Cloud Infrastructure (OCI), assessing their strengths and weaknesses in the context of deploying self-hosted applications.
The Contenders: A High-Level Overview The four major cloud providers—GCP, AWS, Azure, and OCI—all offer an "Always Free" tier as a strategic instrument to onboard developers, students, and small-scale users into their ecosystems. These offerings act as a gateway to their broader, paid services. However, the composition of these free tiers varies dramatically. Some are architected to support traditional, virtual machine-based hosting, while others are heavily skewed towards serverless functions and managed Platform-as-a-Service (PaaS) offerings. Consequently, their suitability for running the diverse array of applications found in popular self-hosted directories is highly variable.
Oracle Cloud Infrastructure (OCI): The Uncontested Powerhouse for VM-Based Hosting For traditional, virtual machine (VM)-centric self-hosting, Oracle Cloud Infrastructure's "Always Free" tier is unparalleled in its generosity. Its core strength lies in a substantial and flexible pool of compute resources that far exceeds its competitors.
Core Offering: OCI provides a flexible pool of ARM-based compute resources totaling 4 OCPUs (Oracle CPU units) and 24 GB of RAM. This is a key differentiator, as this pool can be provisioned as a single powerful VM or partitioned into as many as four smaller VMs, allowing for significant workload consolidation. In addition to the ARM resources, the tier includes two smaller AMD-based E2.1.Micro instances, each with 1/8 OCPU and 1 GB of RAM. Storage and Networking: This robust compute offering is supported by an equally generous 200 GB of block volume storage, which can be allocated across the VMs as boot or data volumes. The most critical advantage, however, is the 10 TB of free monthly data egress. This allowance is orders of magnitude greater than what other providers offer and effectively eliminates the primary source of unexpected cloud bills for public-facing services. Strategic Implication: The combination of powerful, flexible compute, ample storage, and near-unlimited bandwidth positions OCI as the premier choice for hosting multiple Dockerized applications, media servers like PhotoPrism or Immich, or any workload that requires persistent compute power and serves a significant amount of data to the internet. It directly competes with low-end VPS providers by offering a more powerful alternative at zero cost.
Google Cloud Platform (GCP): The Specialist in Lightweight and Containerized Services Google Cloud Platform's "Always Free" tier takes a more specialized approach. While its VM offering is limited, its strength in serverless containers provides a unique and powerful alternative for specific use cases. Core Offering: The free tier includes one e2-micro VM instance per month, restricted to US regions. This instance is very low-powered, with a shared-core vCPU and approximately 1 GB of RAM, making it suitable only for "always-on" lightweight utilities such as a monitoring tool, a password manager, or a simple flat-file CMS. The Cloud Run Advantage: GCP's standout feature for no-cost hosting is Cloud Run, its fully managed serverless container platform. It offers a generous free tier of 2 million requests per month, along with 360,000 GB-seconds of memory and 180,000 vCPU-seconds of compute time. This model is ideal for stateless applications that can scale down to zero when not in use, meaning you are not charged for idle time. This makes it a cost-effective and highly scalable option for APIs, webhooks, and applications with intermittent traffic. The Egress Trap: The most significant limitation of GCP's free tier is the restrictive 1 GB monthly data egress limit for the Compute Engine VM. This makes the e2-micro instance unsuitable for any application that serves more than a trivial amount of data or a few small web pages to the public internet. It is crucial not to confuse this with the more generous 100 GB egress allowance for Cloud Storage, a common and costly mistake.
Microsoft Azure & Amazon Web Services (AWS): The Serverless-First Paradigm A thorough examination of the Azure and AWS free tiers reveals that their strategy for long-term, no-cost offerings is fundamentally different from OCI and GCP. Their "Always Free" tiers are not designed for general-purpose VM hosting. Core Offering: The most compelling compute offerings from these providers, such as the AWS EC2 t2.micro or t3.micro instances and the Azure B1S series VMs, are part of a 12-month introductory offer for new customers only. This is a critical distinction that disqualifies them for sustainable, long-term, no-cost hosting. "Always Free" Strengths: Their permanent free offerings are concentrated in the serverless and PaaS domains.
- AWS provides an "Always Free" tier for AWS Lambda (1 million requests per month) and Amazon DynamoDB (25 GB of NoSQL storage). This makes it an excellent platform for building event-driven, serverless functions rather than hosting traditional, stateful, self-hosted applications.
- Azure offers a similar tier for Azure Functions (1 million requests per month) and a very limited Azure App Service plan that allows for 10 web apps with 1 GB of storage but imposes a daily CPU time quota, making it unsuitable for always-on services. A unique perk is the free self-hosted CI/CD agent with unlimited minutes, a valuable but niche offering. Strategic Implication: For deploying general self-hosted software, which is often distributed as Docker images expecting a persistent VM environment, the "Always Free" tiers from AWS and Azure are largely unsuitable due to the absence of a permanent, free VM.
Comparative Matrix of "Always Free" Tier Resources The strategic differences between the providers become starkly apparent when their "Always Free" resources are compared directly. The following table summarizes the key offerings relevant to self-hosting, highlighting the fundamental architectural choices each provider has made. OCI's strategy is to provide a complete, traditional hosting environment, while GCP, AWS, and Azure use their free tiers primarily as an entry point to their higher-margin, managed PaaS and serverless ecosystems.
[embed]
Directory of Free-Tier-Compatible Self-Hosted Applications
This section presents a curated directory of self-hosted applications that have been vetted for compatibility with the resource constraints of the "Always Free" cloud tiers. The selection process considered not just the application's own resource footprint but the requirements of its entire stack, including databases and other dependencies. The analysis reveals a clear pattern: an application's architecture dictates the most suitable cloud provider. Lightweight, single-binary applications written in Go or Rust with SQLite backends are universally compatible with the most restrictive VMs. In contrast, applications requiring a separate, resource-intensive database like PostgreSQL or MySQL are only viable on OCI's more generous free tier.
Foundational Services (Monitoring, DNS & Ad-Blocking, Password Management) These applications provide essential infrastructure and security services for any self-hosting setup. They are generally designed to be lightweight and efficient, making them excellent candidates for free-tier deployment.
[embed]
Content & Collaboration (Wikis, Blogging, Bookmarks, Notes)
This category includes applications for creating, organizing, and sharing content. The choice of platform is heavily influenced by whether the application uses a flat-file system or requires a dedicated database server.
[embed]
Utilities & Development (File Sharing, Analytics, Automation)
These applications provide useful tools for developers and power users, ranging from simple file transfer utilities to more complex workflow automation engines.
[embed]
Media Management (Photo & Video Libraries)
This category represents the ultimate test of a free tier's capabilities. Media management applications are notoriously resource-intensive, requiring significant CPU power for transcoding and indexing, substantial RAM for processing, and large amounts of storage for libraries and thumbnails. This makes them incompatible with all but the most generous free offerings. The documented requirements for popular applications like PhotoPrism and Immich explicitly state a need for multiple CPU cores and 4 GB or more of RAM. A direct comparison with the free tier specifications shows that GCP's e2-micro (shared core, 1GB RAM) and the serverless offerings from AWS and Azure are completely non-viable. Any attempt to run these applications on those platforms would result in failure due to insufficient resources. Therefore, for the entire category of media management, Oracle Cloud's ARM instance is the only feasible free-tier option.
[embed]
Strategic Deployment Guides and Best Practices
Successfully running applications on a free tier requires more than just choosing the right software; it demands a strategic approach to deployment, resource management, and security. This section provides expert-level guides and best practices to ensure a stable, secure, and genuinely cost-free self-hosting experience.
The "All-in-One" Server Strategy on OCI
The generous resources of OCI's ARM-based free tier make it possible to create a powerful, multi-service server at no cost. This strategy involves consolidating multiple Dockerized applications onto a single, robust VM. To execute this, one should provision the VM.Standard.A1.Flex shape with its maximum allocation of 4 OCPUs and 24 GB of RAM. Using Docker and Docker Compose, a single configuration file can orchestrate a suite of services—for example, running Vaultwarden for password management, Uptime Kuma for monitoring, a PostgreSQL database for applications like Joplin Server, and the n8n automation engine simultaneously. This approach maximizes the value of the free tier, creating a versatile home lab or personal cloud environment. A critical consideration is OCI's policy of reclaiming idle compute instances. An instance is deemed idle if, over a 7-day period, its CPU and network utilization fall below a certain threshold (e.g., 15-20%). To prevent reclamation, it is wise to run a lightweight, continuous task. A simple cron job that performs a periodic task or using a monitoring tool like Uptime Kuma to ping an external service is often sufficient to generate the minimal load required to keep the instance active.
The "Stateless & Scalable" Strategy on GCP Cloud Run
For applications that are stateless and have intermittent traffic patterns, GCP's Cloud Run offers a more efficient model than an always-on VM. This strategy involves packaging a suitable application, such as the transfer.sh file-sharing utility, as a stateless Docker container. The deployment process involves configuring Cloud Run to pull this container image from a repository (like the free tier of Artifact Registry) and connecting it to a free-tier Cloud Storage bucket for persistent file storage. The primary benefit of this architecture is its "scale-to-zero" capability. When the application receives no requests, Cloud Run scales the container count down to zero, and you incur no compute costs. When traffic arrives, it automatically scales up. This pay-for-what-you-use model is perfect for APIs, webhooks, and simple tools that do not require a constant presence, offering a fundamentally different and often more cost-effective approach than the traditional VM model.
The Egress Trap: A Critical Guide to Managing Data Transfer Costs
Network egress—data transferred out of the cloud provider's network—is the most common and dangerous hidden cost in cloud computing. A user can adhere perfectly to all compute and storage limits and still receive a substantial bill due to data transfer charges. The disparity between providers is immense and is arguably the single most important factor when choosing a platform for any public-facing service.
- GCP's Compute Engine free tier includes a meager 1 GB of egress per month. This is easily exhausted by serving a few high-resolution images, a single large file download, or a small amount of regular website traffic.
- OCI's free tier, in contrast, provides 10 TB of egress per month. For nearly all personal and small-scale self-hosting use cases, this is effectively unlimited. This massive difference dictates platform choice. For any application intended for public access that will serve more than a few megabytes of data, OCI is the only platform that removes the risk of egress-related billing surprises. While strategies like using a Content Delivery Network (CDN) can mitigate egress costs on other platforms, the CDN itself may have its own pricing structure, whereas OCI's offering is straightforward and built-in.
Securing Your Free-Tier Fortress: Essential Best Practices
Running public-facing services, even on a free tier, needs a robust security posture. The following practices are non-negotiable for protecting your applications and data. - Firewall Configuration: Employ the principle of least privilege. In the cloud provider's firewall or security group settings, open only the ports that are absolutely necessary for your applications to function (typically TCP ports 80 for HTTP and 443 for HTTPS). All other ports, especially those for administrative access like SSH (port 22), should be restricted to trusted IP addresses. - SSH Security: Never allow password-based or root user login over SSH. Mandate the use of public/private key pairs for authentication, which is a significantly more secure method. - Reverse Proxies and Secure Tunnels: Do not expose application ports (e.g., 3000, 8080) directly to the internet. Instead, use a reverse proxy like Nginx or Caddy running on the VM to receive traffic on ports 80/443 and forward it internally to the correct application. This provides a single, hardened entry point and allows for centralized SSL/TLS termination. An even more secure approach is to use a service like Cloudflare Zero Trust Tunnels, which creates an encrypted tunnel between your VM and the Cloudflare network, completely hiding your server's origin IP address from the public internet and protecting it from direct attacks.
Conclusion & Final Recommendations
The analysis demonstrates that leveraging "Always Free" cloud tiers for sustainable, no-cost self-hosting is not only possible but also a strategically sound approach for a wide range of applications. However, the choice of cloud provider is paramount and depends entirely on the architectural requirements of the workload.
Key Findings
- Oracle Cloud Infrastructure (OCI) is the undisputed leader for general-purpose, VM-based self-hosting within the "Always Free" category. Its combination of a powerful and flexible ARM compute pool, generous storage, and a massive 10 TB monthly egress allowance makes it the only viable option for resource-intensive or multi-service deployments. - Google Cloud Platform (GCP) is a strong, specialized choice for two distinct use cases: hosting single, extremely lightweight applications on its e2-micro VM, or deploying stateless, containerized applications via its Cloud Run service. The platform's primary weakness for general hosting is the severe 1 GB egress limit on its free VM. - Amazon Web Services (AWS) and Microsoft Azure are not suitable for long-term, no-cost hosting of typical self-hosted applications. Their "Always Free" tiers lack a persistent free VM, focusing instead on 12-month trial offers and serverless/PaaS services that do not align with the common deployment models of the software analyzed.
Final Recommendation Matrix
To distill this report into a clear, actionable verdict, the following matrix provides a final recommendation, connecting common self-hosting goals directly to the optimal platform.
[embed]
메타데이터
- post_id
- cebc86ee0dff
- slug
- the-definitive-guide-to-no-cost-self-hosting-on-major-cloud-platforms-cebc86ee0dff
- url
- https://medium.com/@wilsonmx/the-definitive-guide-to-no-cost-self-hosting-on-major-cloud-platforms-cebc86ee0dff
- canonical_url
- https://medium.com/@wilsonmx/the-definitive-guide-to-no-cost-self-hosting-on-major-cloud-platforms-cebc86ee0dff
- author_url
- https://medium.com/@wilsonmx
- status
- ok
- fetched_at
- 2026-07-19 01:37:51