Plataforma: Fly.io | Proveedor: Fly.io | Nivel Gratuito: $5/mes de credito para siempre
El Secreto del Que Nadie Habla
Esto es lo que hace especial a Fly.io: te dan $5 de credito gratis cada mes, para siempre. No es una prueba, no es una oferta por tiempo limitado—hosting permanente gratis para tus contenedores Docker. Si tu uso se mantiene bajo $5 (spoiler: lo hara para la mayoria de proyectos), no pagas nada.
Aun mejor? A diferencia de cada otra plataforma que dice ser "gratis," Fly.io corre tus contenedores Docker como VMs reales. Esto no es serverless donde tu app se duerme despues de 5 minutos. Tus contenedores se mantienen corriendo 24/7, respondiendo instantaneamente a las solicitudes.
He estado corriendo tres APIs de produccion en Fly.io por mas de un ano. Costo total? Cero dolares. Aqui esta exactamente como hacerlo.
Lo Que Obtienes Gratis
Esos $5 de credito mensual se traducen en infraestructura seria:
Obtienes tres VMs con 256MB de RAM cada una, corriendo en cualquier lugar del mundo. Agrega una base de datos PostgreSQL con 1GB de almacenamiento. Suma 160GB de ancho de banda de salida. Todo esto cabe comodamente dentro de tu asignacion gratuita, con espacio de sobra.
Las matematicas son simples: una VM de 256MB cuesta aproximadamente $1.94/mes. Tres de ellas mas una base de datos pequena te pone alrededor de $5. Mientras te mantengas dentro de estos limites, el credito mensual de Fly.io cubre todo.
Comenzar Toma 5 Minutos
Primero, instala el CLI de Fly. En Mac, es un solo comando de brew. En Linux, curl su script de instalacion. Los usuarios de Windows obtienen PowerShell. Todo toma 30 segundos.
# macOS
brew install flyctl
# Linux
curl -L https://fly.io/install.sh | sh
# Windows
pwsh -Command "iwr https://fly.io/install.ps1 -useb | iex"Registrate solo con un correo—eventualmente pediran una tarjeta, pero puedes desplegar tus primeras apps sin una:
flyctl auth signupTu Primer Despliegue (Es Ridiculamente Facil)
Aqui es donde brilla Fly.io. Tienes un Dockerfile? Genial, funcionara. No tienes uno? Fly.io lo descubrira. Hablo en serio—detecta tu framework y genera todo automaticamente.
Dejame mostrarte un ejemplo real. Aqui hay una API de Node.js que despliegue la semana pasada:
// index.js
const express = require('express');
const app = express();
const port = process.env.PORT || 3000;
app.get('/', (req, res) => {
res.json({
message: 'Esta API corre 24/7 gratis',
timestamp: new Date().toISOString()
});
});
app.get('/health', (req, res) => {
res.json({ status: 'healthy' });
});
app.listen(port, '0.0.0.0', () => {
console.log(`Corriendo en puerto ${port}`);
});Para desplegar esto, literalmente solo ejecute:
flyctl launchEso es todo. Fly detecto Node.js, creo un Dockerfile, construyo la imagen, y la desplego globalmente. Todo el proceso tomo aproximadamente 2 minutos. Mi API estaba live en una URL *.fly.dev, con HTTPS automatico, respondiendo a solicitudes desde el datacenter mas cercano.
La Ventaja Docker de la Que Nadie Habla
Esto es lo que separa a Fly.io de Vercel, Netlify, y el resto: estas desplegando contenedores Docker reales. Esto significa que puedes correr literalmente cualquier cosa—scripts de Python, binarios de Go, servidores de Rust, aplicaciones PHP, Ruby on Rails, lo que quieras.
Tengo una API Flask de Python que procesa webhooks, un bot de Node.js que corre tareas programadas, y un servicio Go que maneja redimensionamiento de imagenes. Todo corriendo en el nivel gratuito. Intenta hacer eso en el plan hobby de Vercel.
Tus contenedores corren como microVMs Firecracker, la misma tecnologia que Amazon usa para Lambda. Arrancan en milisegundos pero actuan como servidores reales. Sin cold starts, sin timeouts de 10 segundos, sin limitaciones serverless. Solo tu codigo corriendo exactamente como esperas.
Haciendo Que 256MB Funcionen (Es Mas Facil de Lo Que Piensas)
El nivel gratuito te da 256MB de RAM por VM. Se lo que estas pensando—eso no es nada! Pero te sorprenderias. Una API ligera de Express.js usa aproximadamente 50MB. Una app Flask con algunos endpoints usa alrededor de 80MB. Incluso una app Rails pequena puede entrar en 200MB si eres cuidadoso.
Esto es lo que corre genial en 256MB:
- Backends de API (REST o GraphQL)
- Procesadores de webhook
- Ejecutores de trabajos programados
- Sitios estaticos con funciones dinamicas
- Bots de Discord/Slack
- Bases de datos pequenas con SQLite
Y esto es lo que no:
- Next.js (necesita al menos 512MB)
- Aplicaciones grandes de Django
- Apps Java Spring Boot
- Cualquier cosa que cargue datasets grandes en memoria
Si llegas a limites de memoria, tienes dos opciones. Primero, optimiza tu codigo—transmite archivos en lugar de cargarlos en memoria, usa paginacion para consultas de base de datos, carga lazy las dependencias. La mayoria de "problemas de memoria" son solo codigo ineficiente.
Segunda opcion: escala a 512MB. Esto te pone ligeramente sobre el nivel gratuito, costando quizas $2-3/mes. Aun mas barato que un cafe, y mucho mas util.
PostgreSQL Que Simplemente Funciona
Agregar una base de datos es estupidamente simple:
flyctl postgres createElige la configuracion "Development" cuando pregunte. Esto te da una instancia de PostgreSQL con 256MB de RAM y 1GB de almacenamiento, perfecta para apps pequenas. La base de datos corre en la misma region que tu app para minima latencia.
Conectala a tu app:
flyctl postgres attach <database-name>Esto automaticamente configura una variable de entorno DATABASE_URL. Tu app puede conectarse inmediatamente:
const { Pool } = require('pg');
const pool = new Pool({
connectionString: process.env.DATABASE_URL
});
// Eso es todo. Tienes una base de datos.Estoy corriendo un blog con 500+ posts, un sistema de usuarios con 1000+ cuentas, y un dashboard de analytics rastreando 50k eventos—todo en la base de datos del nivel gratuito. A menos que estes construyendo el proximo Twitter, 1GB es suficiente.
Siendo Global Sin Intentarlo
Despliega a multiples regiones con un comando:
flyctl regions add lhr # Londres
flyctl regions add nrt # Tokyo
flyctl regions add syd # SydneyFly.io automaticamente enruta a los usuarios a la instancia mas cercana. Tus usuarios europeos van a Londres, los usuarios asiaticos van a Tokyo, y todo simplemente funciona. Sin configuracion, sin setup de CDN, sin nada.
Con tres VMs gratuitas, puedes poner una en cada region para cobertura verdaderamente global. O mantener las tres en una region para redundancia—si una crashea, las otras siguen sirviendo solicitudes.
Las Trampas (No Hay Muchas)
Seamos realistas sobre las limitaciones. El credito de $5 no se acumula de mes a mes. Usalo o pierdelo. Pero honestamente, correr tres VMs pequenas 24/7 usa el credito completo de todos modos.
Eventualmente necesitaras agregar una tarjeta de credito para desbloquear ciertas funciones como dominios personalizados y para prevenir interrupcion del servicio si te pasas del limite. Pero aqui esta la cosa—Fly.io te envia un correo antes de cobrarte. Sin facturas sorpresa de $500 porque olvidaste apagar un servidor de prueba.
El limite de 256MB de RAM es real. No puedes simplemente lanzarle codigo ineficiente y esperar milagros. Pero esta restriccion te fuerza a escribir mejor codigo, y eso no es algo malo.
Cuando Usar Fly.io vs Todo lo Demas
Usa Fly.io cuando quieras servidores reales que nunca duermen. Perfecto para APIs, webhooks, bots, y cualquier cosa que necesite responder instantaneamente. El soporte de Docker significa que puedes correr cualquier lenguaje o framework.
Usa Vercel cuando estes construyendo sitios Next.js y quieras esa experiencia de desarrollador perfecta. Sus preview deployments son inigualables.
Usa Cloudflare Workers para funciones edge que necesiten correr en 50+ ubicaciones con cero cold starts.
Usa Railway cuando quieras una UI mas bonita y no te importe pagar desde el dia uno.
Pero para poner una app real online, gratis, que se mantenga corriendo? Fly.io gana siempre.
Tu Turno de Desplegar
Deja de leer e intentalo. En serio, toma 5 minutos:
- Instala el CLI
- Crea una app simple (o usa una que ya tengas)
- Ejecuta
flyctl launch - Mira tu app ir a produccion
Eso es todo. Sin configuracion compleja, sin infierno de yaml, sin sorpresas de facturacion. Solo tu codigo corriendo en infraestructura real.
Construye Algo para Desplegar
Listo para desplegar tu primera app en Fly.io? Empieza construyendo un proyecto real con estos tutoriales practicos:
- Construye un Blog con Flask - Crea un blog Flask completo perfecto para despliegue en Fly.io
- Construye un Portafolio con Flask - Aprende fundamentos de Flask con un sitio de portafolio desplegable
- Construye E-Commerce con Flask - Domina Flask con una aplicacion completa de carrito de compras
Cada tutorial incluye configuracion Docker y pasos de despliegue, facilitando llevar tu proyecto de desarrollo a produccion en el nivel gratuito de Fly.io.
Ya tienes una app Flask? Sigue nuestro tutorial completo de Docker y despliegue en Fly.io para instrucciones paso a paso sobre containerizar tu aplicacion Flask con PostgreSQL y desplegar en Fly.io con migraciones sin downtime.
Detalles Tecnicos
Plataforma: Fly.io Credito Mensual: $5 (cubre 3 VMs + base de datos) Despliegue: Contenedores Docker como microVMs Regiones: 30+ a nivel mundial RAM por VM: 256MB (actualizable) Base de Datos: PostgreSQL con 1GB de almacenamiento Ancho de Banda: 160GB/mes incluido
Nota: Necesitaras una tarjeta de credito registrada despues de las pruebas iniciales, pero no se te cobrara si te mantienes bajo $5/mes de uso.
Fred
AUTHORFull-stack developer with 10+ years building production applications. I've deployed applications to every major cloud platform and lived to tell the tale.
Need a developer who gets it?
POC builds, vibe-coded fixes, and real engineering. Let's talk.
Hire Me →
