
Sesenta contenedores en un servidor
Un servidor bare-metal ejecuta decenas a cientos de contenedores Hoody. KSM y dedup BTRFS hacen que el costo marginal sea casi cero.
Tú envías un portafolio. Dos productos imprimen ingresos, diez están dormidos. En una nube por app pagarías los doce. En Hoody, cincuenta contenedores se apilan en una caja de 49 $ (la entrada comienza en 29 $; este portafolio sube al AX52 por el espacio de RAM) — los diez tranquilos casi no cuestan nada por encima de ese alquiler plano.
twelve apps · one server · one line item on the card
Un producto no es un servidor, son aproximadamente cuatro contenedores: frontend, backend, base de datos, worker. Doce productos son cincuenta contenedores. El kernel deduplica las partes aburridas para que la caja no se entere.
Cada app es un stack pequeño: un front Next.js, una API pequeña, un Postgres o SQLite, un worker. POST cuatro contenedores a /api/v1/projects/[id]/containers, dales un project_alias que coincida con el producto, listo. Doce productos son cincuenta contenedores y un par de extras.
Hoody corre contenedores con LXC, no VMs. Kernel Samepage Merging encuentra páginas de RAM idénticas entre contenedores con la misma base Debian — cincuenta copias de glibc se vuelven una. BTRFS copy-on-write hace lo mismo con el disco. Los contenedores inactivos cuestan su delta sobre la base, no una caja entera cada uno.
Elige un Hetzner AX52 del marketplace de servidores — 64 GB de RAM, 1 TB NVMe, 49 $/mes plano. Esa es la factura. El nivel de entrada de Hoody empieza en 29 $; este portafolio sube al AX52 por el espacio de RAM que necesitan cincuenta contenedores. El contenedor número cincuenta y uno cuesta cero dólares nuevos.
Según la API de Containers: cada contenedor reporta su propia CPU, memoria, disco y red en /api/v1/containers/[id]/stats. El dato de marketing es que cincuenta de esos endpoints stats pueden zumbar en un solo host sin que el host se queje.
Tres cosas que solo tienen sentido cuando un producto inactivo es genuinamente gratis.
Los contenedores detenidos consumen cero CPU y cero RAM — su sistema de archivos simplemente está sobre BTRFS al coste del delta. La app de log de acuario con doce usuarios no quema nada. No tienes que matarla para sentirte bien con ello.
Los contenedores son namespaces de Linux, no inquilinos compartidos en un control plane. Un bug en mortgage-calc-pro no puede ver la base de datos de chord-finder. Sin columnas tenant_id, sin esquema compartido, sin incidente de "oh ese tenant se descontroló". El aislamiento es el kernel.
Cuando el undécimo producto despega, no replatformas. PATCH a los recursos del contenedor, dale más cores, añade una réplica vía /copy. Ya estaba corriendo donde llegaba su tráfico — solo abriste el dial.
La unidad de facturación es el servidor — no el contenedor, ni el producto. Añade tu duodécimo producto y la factura no se mueve. La gráfica muestra la huella relativa de recursos entre contenedores; la columna de coste es el mismo número para todos porque el servidor es el coste.
Las cifras son ilustrativas para un host clase Hetzner AX52. La unidad de facturación es el servidor — añadir más contenedores no añade líneas. Upgrade a una caja más grande cuesta más; añadir contenedores dentro de una caja no.
El modelo de portafolio solía ser una hoja de cálculo de facturas. Ahora es una sola línea.
Cada uno de estos cobra por un producto como si fuera un negocio único. Un portafolio de doce paga la tarifa por app doce veces. El modelo bare-metal te cobra una sola vez.
Cuando estar inactivo es gratis, la siguiente idea no es una conversación de presupuesto — es un POST.