- Version: SearXNG 2026.5.13, image Docker ~96 Mo, licence AGPL-3.0 gratuite.
- Installation: 4 commandes Docker pour un moteur privé en 15 minutes sur Ubuntu 22.04+.
- Piège fréquent: laisser
ultrasecretkeydans settings.yml bloque le démarrage — toujours générer une clé avecopenssl rand -hex 16. - Délai: 15 minutes pour l'installation complète, 5 minutes pour une mise à jour.
Introduction
Vous allez installer SearXNG 2026.5.13 avec Docker et faire tourner votre propre moteur de recherche privé en 15 minutes, sans tracking ni publicité. SearXNG agrège les résultats de Google, Bing, DuckDuckGo et plus de 70 moteurs — vos requêtes ne sont jamais enregistrées ni partagées. Licence AGPL-3.0, 100% gratuit et open-source. GitHub SearXNG.
Ce que vous allez construire et pourquoi en 2026
Un métamoteur de recherche privé accessible sur http://votre-serveur:8888 qui agrège Google, Bing, DuckDuckGo, Qwant, Startpage et 70+ sources sans tracer vos requêtes. Prérequis: un serveur Linux (Ubuntu 22.04+ recommandé) avec 2 Go RAM minimum, 10 Go d'espace disque, et Docker + Docker Compose installés. Temps estimé: 15 minutes. L'image Docker fait ~96 Mo.
Installation: commandes exactes à copier
# Créer le répertoire de travail
mkdir -p ~/searxng/core-config && cd ~/searxng # Télécharger docker-compose.yml et le fichier.env
curl -fsSL \ -O https://raw.githubusercontent.com/searxng/searxng/master/container/docker-compose.yml \ -O https://raw.githubusercontent.com/searxng/searxng/master/container/.env.example # Configurer l'environnement
cp.env.example.env # Lancer SearXNG
docker compose up -d
Résultat attendu: SearXNG est accessible sur http://localhost:8888. Erreur courante: docker: command not found → installer Docker d'abord avec curl -fsSL https://get.docker.com | sh && sudo usermod -aG docker $USER puis recharger la session.
Configuration: les fichiers et variables à définir
Le fichier principal est ~/searxng/core-config/settings.yml. Au premier lancement, SearXNG génère une clé secrète automatiquement. Pour la personnaliser:
# Générer une clé secrète et l'insérer dans settings.yml
SECRET_KEY=$(openssl rand -hex 16)
sed -i "s/ultrasecretkey/$SECRET_KEY/" ~/searxng/core-config/settings.yml
Les variables clés dans settings.yml:
- server:secret_key — Obligatoire. Clé de 32 caractères hex pour sécuriser les cookies. Si laissée à
ultrasecretkey, SearXNG refuse de démarrer. - server:base_url — L'URL publique de votre instance (ex:
https://search.mondomaine.fr/). Requis pour les liens RSS et les partages. - general:instance_name — Le nom affiché dans l'interface (ex:
Mon Moteur Privé). - search:safe_search —
0(désactivé),1(modéré),2(strict). Par défaut: 0.
Activer et désactiver les moteurs de recherche
Dans settings.yml, section engines, chaque moteur a des paramètres spécifiques. Pour désactiver Google et activer uniquement les moteurs respectueux de la vie privée:
# Dans settings.yml, sous engines:
- name: google disabled: true
- name: duckduckgo disabled: false
- name: startpage disabled: false
- name: brave disabled: false
Après chaque modification de settings.yml, relancer: docker compose restart core. Les moteurs qui bloquent fréquemment par CAPTCHA (DuckDuckGo, Qwant) peuvent être désactivés pour plus de fiabilité — voir issue #4824.
Exposer SearXNG sur internet avec un reverse proxy (Caddy)
Pour accéder à votre instance depuis l'extérieur avec HTTPS, installez Caddy comme reverse proxy:
# Installer Caddy
sudo apt install -y caddy # Créer la configuration Caddy
sudo tee /etc/caddy/Caddyfile << 'EOF'
search.mondomaine.fr { reverse_proxy localhost:8888 encode gzip
}
EOF # Redémarrer Caddy
sudo systemctl restart caddy
Caddy génère automatiquement un certificat Let's Encrypt. Résultat: votre moteur est accessible sur https://search.mondomaine.fr. Vérifiez que votre DNS pointe bien vers l'IP du serveur avec un enregistrement A.
Mettre à jour SearXNG et maintenir l'instance
# Mettre à jour vers la dernière version
docker compose down
docker compose pull
docker compose up -d # Vérifier les logs en cas de problème
docker compose logs -f core
SearXNG publie une nouvelle image Docker presque chaque jour (format 2026.5.13-8e5aa9d39). Mettre à jour une fois par semaine est suffisant. Pour automatiser, ajouter un cron: 0 3 * * 0 cd ~/searxng && docker compose down && docker compose pull && docker compose up -d.
Aller plus loin: 3 extensions concrètes
1. Intégrer SearXNG dans Firefox — Dans about:preferences#search, ajouter un moteur personnalisé avec l'URL https://search.mondomaine.fr/search?q=%s. Toutes vos recherches Firefox passeront par votre instance privée.
2. Activer le cache Redis/Valkey — Le docker-compose.yml officiel inclut un conteneur Valkey (fork de Redis). Décommenter la section redis dans settings.yml pour accélérer les recherches répétées de 2 à 5×.
3. Connecter une API LLM pour les résumés — Dans settings.yml, section ai_summarizer, configurer une clé API Ollama locale ou OpenAI pour obtenir des résumés générés par IA directement dans les résultats de recherche.
Étapes à suivre5
Installer Docker et préparer le serveur
Installez Docker et Docker Compose sur votre serveur Ubuntu 22.04+. Commande:curl -fsSL https://get.docker.com | sh && sudo usermod -aG docker $USER. Déconnectez-vous puis reconnectez-vous pour que le groupe Docker soit pris en compte. Vérifiez avecdocker --version(doit afficher Docker 24+). Installez aussi curl et openssl:sudo apt install -y curl openssl. Prérequis minimum: 2 Go RAM, 10 Go disque, Ubuntu 22.04 ou Debian 12. Si vous utilisez un VPS chez Hetzner, OVH ou Scaleway, le plus petit plan à 3,29 €/mois (1 vCPU, 2 Go RAM) suffit largement pour SearXNG. Vérifiez que les ports 80 et 443 sont ouverts dans le pare-feu du fournisseur. Sur Ubuntu, activez le pare-feu:sudo ufw allow 80/tcp && sudo ufw allow 443/tcp && sudo ufw allow 8888/tcp && sudo ufw enable. Vérifiez que Docker démarre au boot:sudo systemctl enable docker.Télécharger et lancer SearXNG avec Docker Compose
Créez le répertoire et téléchargez les fichiers officiels:mkdir -p ~/searxng/core-config && cd ~/searxng && curl -fsSL -O https://raw.githubusercontent.com/searxng/searxng/master/container/docker-compose.yml -O https://raw.githubusercontent.com/searxng/searxng/master/container/.env.example && cp.env.example.env. Lancez SearXNG:docker compose up -d. Vérifiez que le conteneur tourne:docker compose psdoit afficher le conteneursearxng-coreavec le statutUp. Ouvrezhttp://localhost:8888dans votre navigateur — vous devez voir l’interface de recherche SearXNG. Si vous obtenez une erreur 502, attendez 10 secondes et rechargez: le conteneur met 5 à 8 secondes à démarrer complètement. Pour afficher les logs en cas de problème:docker compose logs -f core. Si le port 8888 est déjà utilisé, modifiez le port dans le fichier.env:SEARXNG_PORT=8889puis relancez avecdocker compose up -d.Configurer settings.yml et sécuriser l'instance
Le fichier de configuration se trouve dans~/searxng/core-config/settings.yml. Étape obligatoire: remplacez la clé secrète par défaut.SECRET_KEY=$(openssl rand -hex 16) && sed -i "s/ultrasecretkey/$SECRET_KEY/" ~/searxng/core-config/settings.yml. Sans cette étape, SearXNG peut refuser de démarrer ou afficher un avertissement de sécurité. Personnalisez le nom de l’instance:sed -i 's/instance_name: "SearXNG"/instance_name: "Mon Moteur Privé"/' ~/searxng/core-config/settings.yml. Pour restreindre l’accès public, ajoutez dans la sectionserver:limiter: true— cela active la limitation de taux (1 recherche par 2 secondes) pour empêcher les abus. Pour désactiver la recherche anonyme et exiger un mot de passe, ajoutezimage_proxy: truedans la sectionserver— cela empêche que les images soient chargées directement depuis les moteurs distants. Relancez après chaque modification:docker compose restart core. Vérifiez que les paramètres sont pris en compte:docker compose logs core | grep -i "server secret key".Exposer SearXNG sur internet avec Caddy et HTTPS
Installez Caddy comme reverse proxy:sudo apt install -y caddy. Créez la configuration:sudo tee /etc/caddy/Caddyfile << 'EOF' search.mondomaine.fr { reverse_proxy localhost:8888 encode gzip } EOF. Redémarrez Caddy:sudo systemctl restart caddy. Caddy obtient automatiquement un certificat Let's Encrypt — aucun certificat manuel à gérer. Vérifiez que votre DNS pointe vers le serveur:dig search.mondomaine.fr +shortdoit retourner l'IP de votre serveur. Résultat: votre moteur est accessible surhttps://search.mondomaine.fravec HTTPS. Si vous préférez Nginx, la configuration équivalente est disponible dans la documentation officielle SearXNG. Pour vérifier que HTTPS fonctionne:curl -I https://search.mondomaine.frdoit renvoyerHTTP/2 200. Si Caddy ne démarre pas, vérifiez les logs:sudo journalctl -u caddy --no-pager -n 50. Pour sécuriser davantage l'accès, ajoutez une authentification basique dans le Caddyfile:basicauth * { admin aénéré_Avec_caddy_hash_password }. Générez le hash aveccaddy hash-password --plaintext 'votre_mot_de_passe'.Mettre à jour et surveiller l'instance en production
Mettre à jour SearXNG vers la dernière version:cd ~/searxng && docker compose down && docker compose pull && docker compose up -d. Vérifiez la version:docker compose exec core cat /usr/local/searxng/searxng-src/searx/version_frozen.py | grep VERSION_STRING. Pour automatiser les mises à jour hebdomadaires:echo '0 3 * * 0 cd /root/searxng && docker compose down && docker compose pull && docker compose up -d' | sudo tee /etc/cron.d/searxng-update. Surveillez les logs:docker compose logs -f core. Problème fréquent: les moteurs DuckDuckGo et Qwant bloquent par CAPTCHA (issue GitHub #4824). Solution: désactiver ces moteurs danssettings.ymlet activer Startpage, Brave et Mojeek à la place. Pour vérifier quels moteurs répondent: sélectionnez le lien «! » en bas d'une page de résultats SearXNG.
Conseils pratiques
- Pour limiter les CAPTCHA de DuckDuckGo et Qwant, désactivez-les dans settings.yml et activez Startpage, Brave et Mojeek — ces moteurs bloquent beaucoup moins les instances SearXNG.
- Activez le cache Valkey (inclus dans docker-compose.yml) en décommentant la section redis dans settings.yml: les recherches répétées seront 2 à 5× plus rapides et vous consommerez moins de bande passante.
- Ajoutez SearXNG comme moteur par défaut dans Firefox: Paramètres > Recherche > Ajouter un moteur personnalisé avec l'URL https://search.mondomaine.fr/search?q=%s — toutes vos recherches passeront par votre instance privée.
Points d'attention
- Erreur « Secret key is set to ultrasecretkey »: SearXNG refuse de démarrer si vous n'avez pas remplacé la clé par défaut. Corrigez avec:
SECRET_KEY=$(openssl rand -hex 16) && sed -i "s/ultrasecretkey/$SECRET_KEY/" ~/searxng/core-config/settings.yml && docker compose restart core. - Erreur « SearxEngineCaptchaException » de DuckDuckGo ou Qwant: ces moteurs bloquent les requêtes automatisées. Désactivez-les dans settings.yml (disabled: true) et activez Startpage, Brave, Mojeek à la place.
- Erreur « 502 Bad Gateway » après un restart: le conteneur met 5 à 8 secondes à démarrer. Attendez 10 secondes puis rechargez la page. Si l'erreur persiste, vérifiez les logs:
docker compose logs -f core.
Questions fréquentes5
SearXNG fonctionne-t-il sans GPU ?
Oui. SearXNG est un métamoteur de recherche qui agrège les résultats d'autres moteurs — il n'utilise aucun modèle d'IA et ne nécessite pas de GPU. Un VPS avec 2 Go de RAM et 1 vCPU suffit.
Quelle version de Docker est nécessaire pour SearXNG ?
Docker 20.10+ et Docker Compose V2 (inclus dans Docker Desktop et les installations récentes). Vérifiez avec docker --version. Sur Ubuntu 22.04+, l'installation via get.docker.com fournit une version compatible par défaut.
SearXNG est-il gratuit et open-source ?
Oui. SearXNG est sous licence AGPL-3.0, 100% gratuit. Vous pouvez l'installer, l'utiliser et le modifier sans restriction. L'image Docker officielle est disponible sur Docker Hub (searxng/searxng:latest, ~96 Mo).
Comment résoudre les erreurs CAPTCHA avec DuckDuckGo et Qwant ?
Désactivez DuckDuckGo et Qwant dans settings.yml (disabled: true) et activez Startpage, Brave et Mojeek à la place. Ces moteurs sont plus tolérants envers les instances SearXNG. Voir l'issue GitHub #4824 pour le suivi du problème.
SearXNG vs Whoogle vs Presearch : lequel choisir ?
SearXNG agrège 70+ moteurs (le plus complet), Whoogle ne proxy que Google (plus simple mais limité), Presearch est décentralisé avec récompense en tokens (moins transparent). Pour un contrôle total et la diversité des sources, SearXNG est le choix le plus robuste en 2026.
Guides Technologie & IA
Voir toutConstruire un chatbot local avec Ollama et Python en 30 minutes
Utiliser DeepSeek V4 en 2026 pour améliorer la recherche
Utiliser Claude Opus 4.7 en 2026 pour améliorer la productivité
Comment créer et gérer ses mots de passe de manière sécurisée en 2026
Comment utiliser Ollama en 2026
Poursuivez votre lecture
Multi-catégoriesTransmission d'entreprise 2026 : dispositifs fiscaux et étapes clés pour vendre ou céder son affaire
"Impôts du Cœur" : les agents des finances publiques proposent leur aide à la déclaration de revenus sur le marché
Comment refuser un loyer supérieur à 30 % du revenu en 2026 ?
Équipe éditoriale GuidePratiquefr
Rédacteurs spécialisés en droit, fiscalité et finances
Rédigé et vérifié par notre équipe de rédacteurs spécialisés. Sources officielles consultées : service-public.fr, legifrance.gouv.fr, impots.gouv.fr, ameli.fr. Dernière vérification : 16 mai 2026.
Sources officielles consultées
Les informations contenues dans ce guide sont fournies à titre indicatif et ne remplacent pas un conseil professionnel personnalisé.