Por qué autoalojar Typesense en un VPS
Los servicios de búsqueda gestionados (Algolia, etc.) facturan por consulta y por documento indexado: la factura sube rápido en cuanto su catálogo crece. Typesense ofrece una búsqueda instantánea —el editor anuncia una latencia inferior a 50 ms— con tolerancia a las erratas y ordenación por relevancia, todo ello en un binario único y sin JVM. Al desplegarlo en su propio VPS, fija un coste mensual previsible, mantiene sus índices de usuarios fuera de una nube de terceros y puede situar su instancia lo más cerca posible de su aplicación para minimizar la latencia de red.
Lo que gana concretamente
- Coste fijo en lugar de una facturación por consulta que se dispara con el tráfico
- Ningún salto por la red pública: Typesense en la misma red privada que su aplicación
- Tolerancia a las erratas y búsqueda mientras se escribe (typo-tolerance) sin ajustes complejos
- Datos de índice y registros de búsqueda conservados en su infraestructura
- Huella de memoria reducida: sin JVM, un solo proceso que supervisar
- API REST sencilla y claves de API con alcance limitado (search-only / admin) para asegurar el front
Requisitos realistas
Typesense carga sus índices en memoria: dimensione la RAM en función del tamaño de su corpus. Para un catálogo de hasta unos cientos de miles de documentos, un VPS de 2 vCPU / 4 GB de RAM basta de sobra. Cuente con 8 GB por encima del millón de documentos o para campos vectoriales (búsqueda semántica). Prevea un SSD para la persistencia de los datos, Docker y Docker Compose instalados, así como un subdominio del tipo search.votredomaine.com que apunte a la IP del VPS.
Despliegue paso a paso
Preparar el VPS y Docker
Actualice el sistema, instale Docker y el plugin Compose, y luego cree una carpeta dedicada:
mkdir -p /opt/typesense/data. Este volumen alojará los índices persistidos en el SSD.Definir el servicio con una clave de API fuerte
En un
docker-compose.yml, declare la imagentypesense/typesense:0.25.2, monte/opt/typesense/data:/data, exponga el puerto 8108 solo en local (127.0.0.1:8108) y pase--api-keymediante una variable generada conopenssl rand -base64 32.Lanzar y verificar el estado de salud
Arranque con
docker compose up -dy luego pruebe:curl http://127.0.0.1:8108/healthdebe devolver{"ok":true}. Cree después una primera colección mediante la API REST para validar la indexación.Colocar un reverse proxy + SSL
Configure Nginx (o Caddy) para exponer
search.votredomaine.comhacia127.0.0.1:8108. Con Caddy, un simple bloquereverse_proxy 127.0.0.1:8108genera el certificado Let's Encrypt automáticamente; con Nginx, utilicecertbot --nginx.Compartimentar las claves de API
Nunca difunda la clave de administrador del lado del navegador. Genere una clave
search-onlycon alcance limitado (actions: documents:search) y exponga únicamente esa en su front-end JavaScript.Automatizar las copias de seguridad
Programe un
docker execdel endpoint/operations/snapshoto untardel volumen/opt/typesense/dataenviado cada noche a un almacenamiento de objetos remoto.
Activar un único nodo en modo persistente basta para la mayoría de los proyectos, pero si su búsqueda se vuelve crítica, monte un clúster Raft de 3 nodos (--nodes) sobre 3 VPS para la alta disponibilidad: Typesense gestiona él mismo la replicación y conmuta automáticamente el líder en caso de fallo, sin balanceador de carga aplicativo del lado de la escritura.
Desplegar Typesense desde el Marketplace de ServOrbit
El Marketplace de ServOrbit ofrece Typesense en despliegue con un solo clic: seleccione Desarrollo → Typesense, haga clic en Instalar, y el aprovisionamiento se inicia automáticamente. Se lanza un contenedor typesense/typesense:29.0 en su VPS Ubuntu, con un volumen persistente para sus índices y una clave de API de administrador generada aleatoriamente —mostrada directamente en su área de cliente, sin configuración manual.
Comparada con una instalación manual (docker compose, generación de la clave, vhost Nginx + SSL), la vía Marketplace elimina los pasos repetitivos y le deja directamente en la etapa de la primera colección. La puesta a la venta se activa a partir del primer veredicto de instalación en verde de nuestro bucle de validación automática.