Ir al contenido

Autoaloja tu SaaS en un solo servidor, sin la factura de una plataforma cloud

Última actualización:

Seed funciona en un servidor Linux que alquilas, con Docker Compose tanto en desarrollo como en producción, y un solo comando lo despliega. Preparas el servidor una vez siguiendo los pasos escritos, y a partir de ahí cada despliegue es solo ese comando.

Qué obtienes

  • Traefik delante, con certificados automáticos
  • Postgres y Valkey junto a las aplicaciones
  • Garage, un almacén de archivos S3, para las imágenes y los PDF de las notas y para las fotos de perfil. Las subidas pasan por enlaces firmados y se comprueban por su contenido. Las fotos, HEIC incluido, se convierten en versiones AVIF y WebP ligeras, sin ubicación ni otros metadatos
  • VictoriaMetrics, VictoriaLogs y Grafana, con alertas
  • Una copia de seguridad diaria y cifrada de la base de datos con restic, opcional, y un procedimiento de restauración por escrito
  • Imágenes de cada versión publicadas desde CI cuando subes una etiqueta de versión

Cómo funciona

El despliegue copia el proyecto al servidor por SSH y lo arranca con Compose; en cada despliegue, un servicio que se ejecuta una sola vez aplica las migraciones de la base de datos. Traefik va delante y pide a Let's Encrypt el certificado de cada host.

Postgres, Valkey, un almacén de archivos S3, métricas, logs y paneles con alertas funcionan junto a las aplicaciones, y varios productos pueden compartir un servidor detrás del mismo proxy.

$ deno task deploy Copying files... Copying infra/envs/.env.prod to infra/envs/.env... Creating web push keys if missing... Starting the app... Deploy completed.
Resumido: se omite la salida de rsync y Compose entre los pasos.
  • Traefik
  • Postgres
  • Valkey
  • VictoriaMetrics
  • VictoriaLogs
  • Grafana
  • Alertmanager
  • Garage file store
  • restic backups

Preguntas

¿Necesito Kubernetes?

No. Docker Compose en un solo servidor ejecuta el producto entero, en desarrollo y en producción.

¿Pueden varios productos compartir un servidor?

Sí. Comparten un proxy, y cada uno mantiene su propio directorio, base de datos y datos; comparte un servidor solo entre productos en los que confíes por igual.

¿Hay copias de seguridad?

Sí. Una copia de seguridad diaria y cifrada de la base de datos con restic, opcional, y un procedimiento de restauración por escrito.

¿Seed funciona con Node o Bun?

Todavía no. Hoy Seed funciona con Deno, y el trabajo para que funcione con Deno, Node y Bun está en marcha (#623). Consulta el plan de entornos de ejecución en la página de funciones.

Míralo funcionar en un minuto

La demo es la aplicación que tienes desde el primer día. Ábrela sin registrarte: tu cuenta de invitado empieza con datos de ejemplo.

Otras funciones

Inicio de sesión

Llaves de acceso, enlaces por correo, Google, GitHub y verificación en dos pasos, sin servicio de autenticación.

Más sobre Inicio de sesión

Grupos y roles

Grupos con roles de lector a propietario, invitaciones y registro de actividad.

Más sobre Grupos y roles

Facturación

Facturación por miembro con Stripe, con plan gratuito, prueba y periodo de gracia.

Más sobre Facturación

Todas las funciones Cómo se compara Seed