[{"data":1,"prerenderedAt":116},["ShallowReactive",2],{"seo-verification":3,"marketplace-app-fr-meilisearch":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"marketplace-app-fr-meilisearch",{"slug":9,"slugs":10,"categorySlugs":11,"name":16,"description":17,"phase":18,"unavailableReason":19,"docsUrl":20,"logo":19,"github":19,"tagline":21,"longDescription":22,"features":23,"useCases":30,"steps":40,"faq":59,"specs":78,"compatibleOs":86,"relatedApps":88,"relatedPosts":109,"category":113},"meilisearch",{"fr":9,"en":9,"ar":9,"es":9},{"fr":12,"en":13,"ar":14,"es":15},"developpement","development","التطوير","desarrollo","Meilisearch","Moteur de recherche full-text self-hosted : ajoutez une recherche instantanée et tolérante aux fautes à vos applications via une API REST — 57 k ⭐ GitHub, un seul conteneur Go\u002FRust, moins de 100 Mo de RAM.",1,null,"https:\u002F\u002Fservorbit.com\u002Fblog\u002Fheberger-meilisearch-vps","Moteur de recherche full-text auto-hébergé : recherche instantanée et tolérante aux fautes via une API REST. Un conteneur, moins de 100 Mo de RAM, aucune base externe.","Meilisearch (licence MIT, plus de 57 000 étoiles sur GitHub, version 1.51.0) est un moteur de recherche open source écrit en Rust. Il expose une API REST simple : vous y indexez vos données, puis vous les interrogez avec tolérance aux fautes de frappe, filtrage à facettes, tokenisation multilingue et des temps de réponse inférieurs à 50 ms — sans configuration préalable. Là où Elasticsearch ou Solr imposent une JVM, un cluster et un réglage de shards, Meilisearch tient dans un seul conteneur Docker, un volume nommé pour son répertoire de données et une variable d'environnement pour la clé maître.\n\nSur un VPS ServOrbit, Meilisearch devient la brique de recherche de vos projets : catalogue e-commerce, portail de documentation, recherche intégrée à une application SaaS ou annuaire bilingue français-arabe. Le tokeniseur multilingue traite l'arabe, le français, l'anglais, le chinois, le japonais et une trentaine d'autres langues sans extension à installer. Des SDK officiels couvrent JavaScript\u002FTypeScript, Python, PHP, Ruby, Go, Rust, Java, .NET, Dart et Swift, et des intégrations natives existent pour Strapi, Directus, Ghost, Docusaurus et Vuepress. Le tableau de bord embarqué (Mini Dashboard) permet d'explorer les index et de tester des requêtes depuis le navigateur, tandis que les clés d'API cloisonnées laissent exposer une clé de recherche seule dans un front-end sans jamais y placer la clé maître.",[24,25,26,27,28,29],"Tolérance aux fautes de frappe immédiate : une requête « Mohammmed » retrouve « Mohammed », sans aucun réglage préalable.","Recherche à facettes et filtres : combinez la requête plein texte avec un filtre par catégorie, plage de prix, étiquette ou n'importe quel attribut.","Tokeniseur multilingue : arabe, français, anglais, chinois, japonais et plus de 27 autres langues traités nativement, sans analyseur à installer.","Recherche géographique : filtrez et triez les résultats par distance à un point GPS — utile pour un annuaire d'établissements locaux.","Temps de réponse sous les 50 ms sur des millions de documents : binaire Rust avec stockage LMDB, sans surcoût de JVM.","Licence MIT, plus de 57 000 étoiles GitHub et un développement actif : SDK officiels pour dix langages et intégrations pour les principaux frameworks et CMS headless.",[31,34,37],{"title":32,"body":33},"Recherche de catalogue e-commerce","Indexez votre catalogue produits avec ses attributs de prix, de catégorie et de stock. Le visiteur obtient des résultats dès la frappe, avec des facettes pour affiner par marque ou par gamme de prix — le tout servi depuis votre propre VPS, sans coût à la requête et sans que vos données produit ne sortent de votre infrastructure.",{"title":35,"body":36},"Recherche dans une documentation ou une base de connaissance","Injectez vos fichiers Markdown ou les articles de votre blog dans Meilisearch et exposez une barre de recherche instantanée. La tolérance aux fautes et le support multilingue conviennent particulièrement aux documentations bilingues français-arabe destinées aux publics marocains et de la région MENA.",{"title":38,"body":39},"Recherche intégrée à une application SaaS","Remplacez les requêtes SQL en `ILIKE`, qui balaient les tables entières et trébuchent sur les caractères accentués, par une recherche indexée. Votre application Laravel, Node.js ou Django appelle l'API REST ; Meilisearch se charge du classement, des fautes de frappe et de la mise en évidence des correspondances.",[41,44,47,50,53,56],{"title":42,"body":43},"Commander le VPS ServOrbit","Un VPS de 1 Go de RAM suffit pour démarrer : Meilisearch lui-même reste sous 100 Mo, le reste sert de marge à votre index et au système. Le provisionnement installe Docker sur l'image Ubuntu et prépare la pile.",{"title":45,"body":46},"Déployer depuis le Marketplace","Depuis votre espace client ServOrbit, allez dans Marketplace → Développement → Meilisearch → Déployer. Un seul conteneur `getmeili\u002Fmeilisearch:v1.51.0` démarre en mode production, avec un volume nommé pour `\u002Fmeili_data` et une clé maître `MEILI_MASTER_KEY` générée aléatoirement, affichée dans votre espace client.",{"title":48,"body":49},"Se connecter la première fois","Meilisearch n'a pas d'écran de connexion : c'est un moteur de recherche piloté par API, protégé par une clé maître. Utilisez la clé fournie comme jeton d'authentification (en-tête Authorization: Bearer \u003Cvotre-clé>), par exemple : curl -H \"Authorization: Bearer \u003Cvotre-clé>\" https:\u002F\u002F\u003Cvotre-domaine>\u002Fkeys",{"title":51,"body":52},"Rendre l'API accessible à vos applications","L'API REST écoute sur le port 7700, publié sur la boucle locale du VPS. Publiez-la derrière un vhost sur votre domaine en HTTPS pour vos applications distantes, ou ouvrez un tunnel le temps d'une session d'administration : `ssh -L 7700:127.0.0.1:7700 root@\u003Cip>`. Un conteneur d'application hébergé sur le même VPS peut, lui, interroger directement le service.",{"title":54,"body":55},"Indexer vos premières données","Envoyez un tableau JSON pour créer un index et y ajouter des documents : `curl -X POST 'http:\u002F\u002F127.0.0.1:7700\u002Findexes\u002Fproducts\u002Fdocuments' -H 'Authorization: Bearer VOTRE_CLE_MAITRE' -H 'Content-Type: application\u002Fjson' -d '[{\"id\":1,\"name\":\"VPS Cloud 2 Go\",\"category\":\"hosting\"}]'`. L'indexation est asynchrone : suivez son avancement via le point d'entrée `\u002Ftasks`.",{"title":57,"body":58},"Interroger depuis votre application et surveiller les index","Installez le SDK de votre langage (`npm install meilisearch`, `composer require meilisearch\u002Fmeilisearch-php`, `pip install meilisearch`) puis lancez votre première requête : `client.index('products').search('vps', { facets: ['category'] })`. Le Mini Dashboard embarqué, ouvert dans un navigateur avec votre clé maître, permet de parcourir les index, de rejouer des requêtes et de suivre la file de tâches.",[60,63,66,69,72,75],{"q":61,"a":62},"Quelle différence avec Elasticsearch ou Algolia ?","Elasticsearch est une plateforme de recherche distribuée fondée sur la JVM, pensée pour l'analyse de logs à grande échelle : puissante, mais complexe à exploiter et gourmande en RAM (2 à 8 Go au minimum). Algolia est un service SaaS entièrement géré, facturé à la requête. Meilisearch occupe une autre position : il est optimisé pour la recherche destinée aux utilisateurs finaux, sur des volumes allant jusqu'à quelques dizaines de millions de documents, tourne dans un binaire Rust sous 100 Mo de RAM et s'auto-héberge intégralement sous licence MIT. Pour agréger des logs sur un cluster, prenez Elasticsearch ; pour une recherche instantanée sur un catalogue, une documentation ou les données d'une application, Meilisearch est le bon choix.",{"q":64,"a":65},"Quelles ressources faut-il prévoir sur le VPS ?","Le binaire lui-même reste sous 50 Mo de RAM au repos. La taille de l'index dépend de vos données : un index de 100 000 fiches produit comportant plusieurs attributs textuels occupe typiquement 200 à 400 Mo de RAM et autant de disque, Meilisearch construisant à l'avance des index inversés complets pour la vitesse. Un VPS de 1 Go couvre la plupart des projets petits et moyens ; passez à 2 ou 4 Go pour plusieurs millions de documents ou un trafic de recherche soutenu.",{"q":67,"a":68},"Meilisearch gère-t-il l'arabe et le français ?","Oui. Meilisearch embarque un tokeniseur multilingue qui traite l'arabe (écriture de droite à gauche, tokenisation par n-grammes de caractères, sans radicaliseur à configurer), le français (gestion des diacritiques et des mots vides) et des dizaines d'autres langues d'origine. Aucun plugin ni analyseur linguistique n'est à installer : pour une recherche bilingue français-arabe, envoyez les deux champs dans le même document et interrogez normalement.",{"q":70,"a":71},"Mes données sont-elles exposées si aucune clé maître n'est définie ?","En mode développement, sans clé maître, l'API REST est entièrement ouverte : quiconque atteint le port 7700 peut lire, écrire et supprimer tous les index. Le provisionnement ServOrbit définit systématiquement une clé maître `MEILI_MASTER_KEY` aléatoire et lance Meilisearch en mode production : votre instance est donc protégée dès le premier démarrage. Conservez cette clé dans un gestionnaire de secrets — c'est le seul identifiant permettant de générer des clés d'API et d'administrer l'instance.",{"q":73,"a":74},"Puis-je créer des clés d'API restreintes pour mes clients ?","Oui. À partir de la clé maître, vous pouvez créer des clés aux permissions fines : lecture seule sur un index précis, recherche seule avec filtrage d'attributs, écriture sur un sous-ensemble d'index. C'est le schéma recommandé pour une application front-end : générez une clé de recherche seule, incapable de supprimer des documents, exposez-la dans votre bundle JavaScript et gardez la clé maître exclusivement côté serveur.",{"q":76,"a":77},"Comment sauvegarder mon instance ?","Toutes les données de Meilisearch vivent dans le répertoire `\u002Fmeili_data`, monté sur un volume Docker nommé : une sauvegarde est donc un instantané de ce volume. Rien n'est stocké ailleurs, il n'y a ni base externe ni service tiers à sauvegarder en parallèle. À la restauration, il suffit de remonter le volume et de redémarrer le conteneur avec la même clé maître.",{"ram":79,"cpu":80,"disk":81,"stack":82,"port":85},"1 Go","1 vCPU","10 Go",[83,84],"Docker","Rust","7700",[87],"ubuntu-24.04",[89,97,103],{"name":90,"slug":91,"categorySlug":12,"categoryName":92,"categoryColor":93,"logo":94,"tagline":95,"description":96},"Laravel Stack","laravel-stack","Développement","text-warning bg-warning\u002F10","https:\u002F\u002Fcdn.simpleicons.org\u002Flaravel","PHP-FPM, Nginx, PostgreSQL, Redis et Supervisor — stack Laravel production-ready dès la commande.","PHP-FPM, Nginx, PostgreSQL, Redis et Supervisor préconfigurés. Déployez Laravel en production sans configuration initiale.",{"name":98,"slug":99,"categorySlug":12,"categoryName":92,"categoryColor":93,"logo":100,"tagline":101,"description":102},"Node.js Stack","nodejs-stack","https:\u002F\u002Fcdn.simpleicons.org\u002Fnodedotjs","Node.js, PM2, Nginx et base de données — environnement production pour vos APIs et apps JavaScript.","Node.js avec PM2, Nginx reverse proxy et base de données. Vos APIs et applications JavaScript prêtes à recevoir du trafic.",{"name":104,"slug":105,"categorySlug":12,"categoryName":92,"categoryColor":93,"logo":106,"tagline":107,"description":108},"Nuxt Stack","nuxt-stack","https:\u002F\u002Fcdn.simpleicons.org\u002Fnuxt","Nuxt 3 avec SSR, PostgreSQL et reverse proxy — environnement production pour vos apps Vue.js.","Nuxt 3 avec SSR, PostgreSQL et reverse proxy. Environnement production pour vos applications Vue.js.",[110,111,112],"heberger-meilisearch-vps","deployer-laravel-vps","deployer-nodejs-app-vps",{"key":12,"slug":12,"name":92,"objective":114,"icon":115,"color":93},"Démarrer rapidement un projet logiciel.","dev",1793820304711]