Por qué autoalojar Meilisearch en un VPS
Meilisearch ofrece una experiencia de búsqueda «search-as-you-type» comparable a la de las soluciones comerciales, pero con licencia open source y una configuración mínima: nada de ajustes esotéricos de analizadores, valores por defecto pertinentes y una API clara. Autoalojarlo en un VPS le ahorra la facturación por documento y por búsqueda de los servicios gestionados tipo Algolia, y mantiene sus índices y sus datos de producto en su propia infraestructura. Es una opción especialmente rentable para un sitio de comercio electrónico, un blog o una documentación: un solo VPS modesto atiende cientos de miles de búsquedas al día con una latencia muy baja. Usted controla las claves de API, los atributos filtrables y la relevancia, y puede reindexar a voluntad sin ninguna restricción de cuota.
Las ventajas concretas de autoalojar Meilisearch
- Búsqueda instantánea en menos de 50 ms, con tolerancia a las erratas activada por defecto.
- Configuración mínima: ajustes de relevancia sensatos de origen y puesta en marcha en unos minutos.
- Filtrado, facetas, ordenación y resaltado integrados para construir una interfaz de búsqueda completa.
- Escrito en Rust: huella de memoria razonable y alto rendimiento incluso en un VPS pequeño.
- API sencilla, con SDK para la mayoría de los lenguajes e integraciones front-end listas para usar.
- Sin coste por documento indexado ni por consulta, a diferencia de los motores de búsqueda gestionados.
Requisitos de hardware y de software
Meilisearch es frugal, pero carga parte de sus índices en memoria para seguir siendo rápido. Para un índice de unas decenas de miles de documentos bastan de 1 a 2 GB de RAM; para cientos de miles de documentos con numerosos atributos filtrables, apunte a entre 2 y 4 GB. La fase de indexación es la que más RAM y CPU consume, así que deje margen para las reindexaciones. Con uno o dos vCPU es suficiente, y de 20 a 40 GB de SSD cubren el índice y sus snapshots. Necesitará Docker, un dominio si expone la API al público y, obligatoriamente, una MEILI_MASTER_KEY: sin ella, en modo producción, la instancia se niega a arrancar para protegerle de un acceso abierto.
Desplegar Meilisearch paso a paso
Aprovisionar el VPS y Docker
Instale Docker y configure el cortafuegos para abrir únicamente el 80 y el 443. Cree un registro DNS A para
busqueda.midominio.comapuntando a la IP del VPS.Lanzar Meilisearch en modo producción
Utilice la imagen
getmeili/meilisearch. DefinaMEILI_ENV=productionyMEILI_MASTER_KEYcon una clave robusta (openssl rand -base64 32). Monte un volumen en/meili_datapara persistir los índices:volumes: - ./meili_data:/meili_data.Gestionar las claves de API
A partir de la master key, genere claves de alcance reducido: una clave de búsqueda (search) para exponer en el front-end y una clave de administración (admin) del lado del servidor para la indexación. No exponga nunca la master key en el navegador.
Configurar el reverse proxy y el TLS
Coloque Caddy delante del puerto
7700:busqueda.midominio.com { reverse_proxy localhost:7700 }. Caddy obtiene el certificado Let's Encrypt automáticamente y cifra todo el tráfico de búsqueda.Indexar sus datos y ajustar la relevancia
Envíe sus documentos mediante la API o un SDK y defina después los
searchableAttributes,filterableAttributesysortableAttributes, así como lasrankingRulesadaptadas a su caso (comercio electrónico, documentación, blog).Activar los snapshots y la copia de seguridad
Configure los snapshots o los dumps periódicos de Meilisearch y cópielos hacia un almacenamiento remoto. En caso de incidente, un dump permite reconstruir la instancia con sus índices y sus ajustes.
Limite la lista de filterableAttributes a lo estrictamente necesario: cada atributo filtrable aumenta el tamaño del índice y el tiempo de indexación. Para una interfaz de búsqueda reactiva, conecte el front-end directamente a Meilisearch con una clave «search» de alcance restringido (limitada a ciertos índices) en lugar de retransmitir cada consulta a través de su backend, lo que elimina una ida y vuelta y reduce la latencia percibida. Durante una reindexación masiva, siga la tarea mediante la API /tasks en lugar de bloquear a la espera.
Búsqueda en árabe y en francés: funciona sin configuración
Uno de los ángulos distintivos de Meilisearch para los proyectos de Marruecos y de la región MENA es su soporte bilingüe árabe-francés sin plugin. El tokenizador detecta automáticamente el idioma de cada atributo y aplica el tratamiento adecuado: segmentación por n-gramas para el árabe (que gestiona la ausencia de separadores estándar) y normalización de los diacríticos para el francés.
En concreto, un índice de productos que mezcla nombres en árabe (خادم VPS) y en francés (Serveur VPS) responde correctamente a los dos tipos de consultas sin configuración adicional. Es ideal para un catálogo de comercio electrónico marroquí, un directorio de empresas o un portal de ofertas de empleo dirigido a ambos idiomas.
Para una búsqueda trilingüe (árabe, francés e inglés), basta con añadir los campos en los tres idiomas dentro del mismo documento JSON y Meilisearch los indexa todos. No hacen falta índices separados por idioma.
Casos de uso: del comercio electrónico al SaaS
Catálogo de comercio electrónico: indexe productos, categorías y descripciones. Las facetas (marca, precio, disponibilidad) se añaden con una línea de configuración (filterableAttributes). Resultado: una barra de búsqueda que responde en tiempo real con filtros clicables, sin tocar su base SQL de pedidos.
Documentación técnica: rastree sus archivos Markdown o las páginas de su Ghost hacia Meilisearch con meilisearch-docsearch-scraper. El plugin Instant MeiliSearch integra una barra de búsqueda tipo Algolia DocSearch en diez minutos, con autocompletado y resaltado de los extractos.
Directorio profesional o marketplace local: combine full-text y geolocalización para obtener un resultado a menos de 10 km, en la categoría correcta y con tolerancia a las erratas en el nombre del proveedor. Todo ello servido por su VPS, sin depender de una API de terceros de pago.