Desarrollo

FastAPI Stack

Python 3.12, Uvicorn, Gunicorn, Nginx y PostgreSQL 16 — entorno FastAPI listo para producción desde el pedido.

Acerca de FastAPI Stack

FastAPI Stack configura su VPS con los componentes necesarios para desplegar una API FastAPI en producción: Python 3.12 (PPA deadsnakes), Uvicorn como servidor ASGI gestionado por Gunicorn, Nginx como frontal y PostgreSQL 16 para los datos. Despliegue su API Python sin configuración manual del servidor.

Lo que se instala

Listo al arrancar el VPS

SO compatibles
Ubuntu 24.04
Aplicación
FastAPI Stack
Stack técnico
Python 3.12UvicornGunicornNginxPostgreSQL 16pipvirtualenv
RAM mínima
1 GB
CPU mínima
1 vCPU
Acceso
root por SSH

Funcionalidades clave

  • Python 3.12 del PPA deadsnakes — La última versión estable de Python, totalmente compatible con FastAPI, Pydantic v2 y SQLAlchemy 2. Instalada desde el PPA oficial: puede añadir otras versiones en paralelo y gestionarlas por proyecto mediante virtualenv.
  • Uvicorn ASGI gestionado por Gunicorn — Uvicorn gestiona las conexiones WebSocket, los Server-Sent Events y las peticiones async sin un hilo por petición. Gunicorn orquesta varios workers Uvicorn y los reinicia automáticamente en caso de fallo.
  • Nginx como proxy inverso — Nginx termina el TLS, sirve los archivos estáticos directamente desde el disco, comprime las respuestas con gzip y configura las cabeceras de actualización WebSocket sin configuración adicional.
  • PostgreSQL 16 — Compatible de forma nativa con asyncpg para las consultas async. Columnas JSONB, búsqueda de texto completo y planificador de consultas mejorado disponibles desde la primera migración.
  • pip, virtualenv y pip-tools — Cada proyecto queda aislado en su propio virtualenv en /var/www/su-proyecto/venv. Instale cualquier paquete Python sin afectar al sistema ni a los demás proyectos alojados.
  • Swagger UI y ReDoc generados automáticamente — FastAPI expone /docs y /redoc para cada endpoint que defina. Sus API quedan autodocumentadas y se pueden probar en el navegador desde el primer arranque.
  • Listo para Celery y Redis — Instale Redis con un solo comando y añada Celery para las tareas en segundo plano (correos electrónicos, procesamiento de imágenes, inferencias ML diferidas). Supervisor mantiene los workers activos tras un reinicio.

¿Cuándo usar esta solución?

API REST o microservicio

Despliegue una aplicación FastAPI como API REST autónoma o microservicio. Uvicorn procesa las peticiones async, Nginx termina el TLS y PostgreSQL soporta su modelo de datos. Añada Redis para la caché o el rate limiting sin cambiar la estructura de despliegue.

Backend de API para IA y machine learning

Exponga un modelo de machine learning por HTTP gracias a la gestión async de las peticiones de FastAPI. Cargue el modelo una sola vez al arrancar, sirva las predicciones en paralelo en varios workers Uvicorn y ofrezca una interfaz /docs a los consumidores sin escribir ningún cliente.

Backend para SPA o aplicación móvil

Aloje la capa de API de una interfaz React, Vue o móvil. FastAPI gestiona CORS de forma nativa, Pydantic valida cada payload entrante y el esquema OpenAPI puede exportarse para generar clientes TypeScript o Swift automáticamente.

Guía

Desplegar FastAPI Stack en su VPS

  1. Pedir un VPS ServOrbit

    1 GB de RAM en Ubuntu 24.04 basta para una API FastAPI ligera. Prevea 2 GB si ejecuta PostgreSQL en el mismo VPS, 4 GB para workers Celery o inferencia ML concurrente. La plantilla FastAPI Stack está disponible en el formulario de pedido.

  2. Desplegar desde el marketplace

    Acceda a Marketplace → Desarrollo → FastAPI Stack y haga clic en Desplegar. El script instala Python 3.12, Uvicorn, Gunicorn, Nginx y PostgreSQL 16 automáticamente, sin necesidad de una sesión SSH para la configuración básica.

  3. Clonar su proyecto y configurarlo

    Conéctese por SSH, clone su repositorio, cree un virtualenv (python3.12 -m venv venv), instale las dependencias (pip install -r requirements.txt) y defina las variables de entorno (DATABASE_URL, SECRET_KEY, ALLOWED_ORIGINS) en un archivo .env.

  4. Arrancar Uvicorn con Gunicorn

    Lance su aplicación con gunicorn main:app -k uvicorn.workers.UvicornWorker --bind 127.0.0.1:8000 --workers 4. El número de workers recomendado es (2 × vCPU) + 1. Nginx hace de proxy de los puertos 80 y 443 hacia el puerto 8000.

  5. Activar el HTTPS y acceder a /docs

    Ejecute certbot --nginx -d su-dominio.com para obtener un certificado Let's Encrypt gratuito. Su API queda accesible en https://su-dominio.com y la documentación interactiva en https://su-dominio.com/docs.

  6. Iniciar sesión por primera vez

    FastAPI Stack no crea ninguna cuenta de usuario por defecto: la autenticación depende de su aplicación. Acceda a /docs para explorar los endpoints disponibles y probar sus primeras peticiones directamente desde el navegador.

Preguntas frecuentes

Preguntas sobre FastAPI Stack

← Volver a DesarrolloTodas las aplicaciones
FastAPI es async nativo, con validación Pydantic y documentación OpenAPI generada automáticamente — ideal para las API REST y los microservicios. Django es un framework full-stack con administración integrada, ORM y motor de plantillas — más adecuado para las aplicaciones monolíticas. Para un backend de API puro, FastAPI es más rápido de desarrollar y de ejecutar.

Integrar el botón de despliegue

¿Mantiene un proyecto que utiliza FastAPI Stack? Este botón permite a sus lectores desplegarlo en un VPS con un clic, sin leer documentación de Docker.

Deploy FastAPI Stack on ServOrbit
Markdown
[![Deploy FastAPI Stack on ServOrbit](https://servorbit.com/brand/deploy/button.svg)](https://servorbit.com/vps-cloud?template=fastapi&utm_source=deploy-badge&utm_medium=referral&utm_campaign=fastapi)
HTML
<a href="https://servorbit.com/vps-cloud?template=fastapi&utm_source=deploy-badge&utm_medium=referral&utm_campaign=fastapi"><img src="https://servorbit.com/brand/deploy/button.svg" alt="Deploy FastAPI Stack on ServOrbit" height="40"></a>

El botón lleva al pedido de un VPS con la plantilla preseleccionada. La imagen se sirve desde servorbit.com: no tiene que alojar nada por su parte.

¿Necesita ayuda?

Consulte nuestro centro de ayuda y nuestra FAQ, o contacte con nuestro equipo: llamada, WhatsApp o correo electrónico.

Escribir por WhatsAppse abre en una pestaña nueva