¿Cansado de que Google, Bing o DuckDuckGo rastreen cada búsqueda que realizas? SearXNG Docker Compose es la solución definitiva para quienes valoran su privacidad: un metabuscador open-source que agrega resultados de más de 70 buscadores sin rastrear ni perfilar a sus usuarios, todo desplegado en tu propio servidor en menos de 5 minutos.
En esta guía completa aprenderás a instalar y configurar este potente motor de búsqueda privado usando contenedores Docker, descubrirás por qué más de 23.000 desarrolladores en GitHub confían en esta herramienta y cómo puedes tener tu propia alternativa a Google completamente bajo tu control.
Qué es SearXNG Docker Compose
SearXNG es un metabuscador open-source que consulta simultáneamente múltiples motores de búsqueda (Google, Bing, Yahoo, DuckDuckGo, Startpage, Brave, Qwant y hasta 247 servicios más) y te muestra los resultados agregados sin registrar tu IP, sin cookies de rastreo y sin perfilado de usuario.
Al implementar searxng docker compose, obtienes un buscador completamente funcional en tu infraestructura que respeta tu privacidad al 100%. A diferencia de las alternativas comerciales, esta solución te garantiza que ninguna empresa está monetizando tus búsquedas ni construyendo un perfil de tus intereses.
La arquitectura basada en contenedores Docker facilita enormemente el despliegue: incluye el motor de búsqueda, un proxy inverso Caddy con SSL automático y una caché Redis para optimizar el rendimiento. Todo esto funciona de forma orquestada mediante Docker Compose, lo que simplifica tanto la instalación como el mantenimiento.
Con más de 9.000 commits y 273 contribuidores activos, este proyecto demuestra la solidez que solo el desarrollo open-source colaborativo puede ofrecer. El código está escrito principalmente en Python (80% del repositorio) y está licenciado bajo AGPL-3.0, garantizando que siempre será software libre.
Ventajas de usar SearXNG Docker Compose
Desplegar tu propio metabuscador con esta solución ofrece beneficios significativos que van mucho más allá de la simple privacidad:
- Privacidad absoluta: Cero rastreo de usuarios, sin cookies invasivas, sin almacenamiento de búsquedas ni construcción de perfiles publicitarios
- Resultados agregados: Consulta hasta 70 buscadores simultáneamente y obtén una visión más completa que usando un solo motor
- Sin censura: Al controlar tu propia instancia, nadie puede filtrar o manipular tus resultados de búsqueda
- Accesible vía Tor: Puedes configurar el servicio para ser accesible mediante red Tor, maximizando el anonimato
- Personalización total: Elige qué motores consultar, cómo ponderar resultados, qué idiomas priorizar y mucho más
- Sin publicidad: Resultados limpios sin anuncios patrocinados ni contenido promocionado
- Multiidioma: Disponible en 58 idiomas con soporte completo para búsquedas localizadas
- API abierta: Integra capacidades de búsqueda en tus propias aplicaciones mediante la API REST
Requisitos previos para instalar SearXNG Docker Compose
Antes de comenzar con la instalación, verifica que tu sistema cumple estos requisitos mínimos para garantizar un funcionamiento óptimo del metabuscador.
Hardware recomendado
- CPU: 1 core mínimo (2 cores recomendado para tráfico moderado)
- RAM: 512 MB mínimo absoluto, 1-2 GB recomendado para mejor rendimiento de caché
- Almacenamiento: 2 GB libres para imágenes Docker y logs
- Red: Conexión estable a internet para consultar los motores de búsqueda externos
Software necesario
- Sistema operativo: Linux (Ubuntu 22.04/24.04, Debian 11/12) recomendado, también funciona en macOS y Windows con Docker Desktop
- Docker: Versión 20.10 o superior instalada y funcionando
- Docker Compose: Versión 2.x (incluida en instalaciones recientes de Docker)
- Git: Para clonar el repositorio oficial
- Dominio (opcional): Si quieres acceder mediante HTTPS con certificado SSL válido
Respecto a puertos, la configuración por defecto usa el puerto 8080 para la aplicación. Si despliegas con Caddy incluido, necesitarás los puertos 80 y 443 disponibles para HTTP/HTTPS respectivamente.
Instalación paso a paso de SearXNG Docker Compose
El proceso de instalación oficial es extremadamente sencillo gracias a la configuración Docker Compose proporcionada por el proyecto. Vamos a realizar una instalación completa con proxy inverso Caddy y SSL automático.
1. Clonar el repositorio oficial
Primero accede a tu servidor vía SSH y clona el repositorio en una ubicación apropiada. La documentación oficial recomienda /usr/local para instalaciones del sistema:
cd /usr/local
sudo git clone https://github.com/searxng/searxng-docker.git
cd searxng-docker
Este repositorio contiene todo lo necesario: archivos Docker Compose, configuraciones predefinidas, scripts de utilidad y documentación detallada.
2. Configurar variables de entorno
Edita el archivo .env para personalizar tu instalación. Los parámetros más importantes son:
# Hostname donde se accederá al servicio
SEARXNG_HOSTNAME=search.tudominio.com
# Email para certificados Let's Encrypt
[email protected]
Si solo vas a usar la aplicación localmente o mediante IP, puedes dejar los valores por defecto. El email es necesario únicamente si usas Caddy para obtener certificados SSL automáticos.
3. Generar clave secreta
Por seguridad, debes generar una clave secreta única que searxng docker compose utilizará para cifrar sesiones. Ejecuta este comando en Linux/macOS:
sed -i "s|ultrasecretkey|$(openssl rand -hex 32)|g" searxng/settings.yml
En macOS, usa sed -i '' en lugar de sed -i. Para Windows PowerShell, consulta el script específico en el README del repositorio.
4. Personalizar configuración (opcional)
El archivo searxng/settings.yml contiene todas las opciones de configuración. Aquí puedes modificar aspectos como:
- Qué motores de búsqueda habilitar o deshabilitar
- Idiomas predeterminados de la interfaz y resultados
- Configuración de caché y límites de peticiones
- Plugins adicionales (calculadora, conversión de unidades, etc.)
- Temas visuales disponibles
Para un primer despliegue, la configuración por defecto funciona perfectamente. Puedes ajustarla más adelante según tus necesidades específicas.
5. Revisar el archivo docker-compose.yaml
El repositorio incluye un archivo docker-compose.yaml preconfigurado con tres servicios principales:
version: '3.8'
services:
caddy:
container_name: caddy
image: caddy:2-alpine
network_mode: host
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile:ro
- caddy-data:/data:rw
- caddy-config:/config:rw
environment:
- SEARXNG_HOSTNAME=${SEARXNG_HOSTNAME:-http://localhost:80}
- SEARXNG_TLS=${LETSENCRYPT_EMAIL:-internal}
restart: unless-stopped
searxng:
container_name: searxng
image: searxng/searxng:latest
network_mode: host
volumes:
- ./searxng:/etc/searxng:rw
environment:
- SEARXNG_BASE_URL=https://${SEARXNG_HOSTNAME:-localhost}/
restart: unless-stopped
redis:
container_name: redis
image: valkey/valkey:8-alpine
command: valkey-server --save 30 1 --loglevel warning
network_mode: host
volumes:
- valkey-data:/data
restart: unless-stopped
volumes:
caddy-data:
caddy-config:
valkey-data:
Si prefieres usar tu propio proxy inverso (Nginx Proxy Manager, Traefik, etc.), puedes eliminar el servicio Caddy y apuntar tu proxy al puerto 8080 de este metabuscador.
6. Levantar los contenedores
Una vez completada la configuración, inicia todos los servicios con un solo comando:
sudo docker compose up -d
Docker descargará las imágenes necesarias (puede tardar 2-5 minutos la primera vez) y arrancará los tres contenedores. Verifica que todo funciona correctamente con:
sudo docker compose logs -f
Deberías ver mensajes indicando que Caddy obtuvo certificados SSL, que el motor de búsqueda inició correctamente y que Redis está funcionando. Presiona Ctrl+C para salir de los logs.
7. Acceder a la interfaz web
Abre tu navegador y visita la URL configurada (https://search.tudominio.com si usaste un dominio, o http://tu-ip:8080 si accedes por IP directamente). Deberías ver la interfaz limpia y minimalista del buscador, lista para realizar tu primera búsqueda privada.
Configuración avanzada de SearXNG Docker Compose
Una vez que tienes el sistema funcionando, puedes optimizarlo según tus necesidades específicas. Aquí algunas configuraciones avanzadas recomendadas por la comunidad.
Seleccionar motores de búsqueda activos
En searxng/settings.yml encontrarás la sección engines: donde puedes habilitar/deshabilitar motores específicos. Por ejemplo, si solo quieres resultados de Google, DuckDuckGo y Brave:
engines:
- name: google
disabled: false
weight: 1.0
- name: duckduckgo
disabled: false
weight: 0.8
- name: brave
disabled: false
weight: 0.7
- name: bing
disabled: true # Deshabilitar Bing
El parámetro weight controla la importancia de cada motor en los resultados agregados. Valores más altos priorizan ese buscador.
Configurar límites y timeouts
Para evitar abusos y mejorar rendimiento, ajusta estos parámetros en la configuración:
outgoing:
request_timeout: 3.0 # Segundos máximo por petición
max_request_timeout: 10.0 # Timeout absoluto
server:
limiter: true # Habilitar rate limiting
search:
max_page: 3 # Limitar paginación profunda
Estos ajustes protegen tu servidor de queries excesivas que podrían consumir muchos recursos.
Habilitar autocomplete
La función de autocompletado mejora significativamente la experiencia de usuario. Habilítala configurando el backend preferido:
search:
autocomplete: "google" # Opciones: google, duckduckgo, qwant, etc.
Configurar acceso Tor
Para maximizar privacidad, puedes hacer que el servicio consulte los motores externos a través de Tor. Requiere tener Tor instalado:
outgoing:
using_tor_proxy: true
extra_proxy_timeout: 10.0
Ten en cuenta que esto ralentizará las búsquedas pero añade una capa extra de anonimato.
Mantenimiento y actualización de SearXNG Docker Compose
Mantener tu instalación actualizada es crucial para beneficiarte de mejoras de seguridad, nuevas funcionalidades y corrección de bugs. El proceso es extremadamente sencillo.
Actualizar a la última versión
Para actualizar searxng docker compose a la versión más reciente, ejecuta estos comandos en el directorio de instalación:
cd /usr/local/searxng-docker
sudo git pull
sudo docker compose pull
sudo docker compose up -d
El primer comando descarga los cambios del repositorio (configuraciones actualizadas), el segundo obtiene las imágenes Docker más recientes y el tercero reinicia los contenedores aplicando las actualizaciones.
Backup de configuración
Antes de actualizar o hacer cambios importantes, crea un backup del directorio de configuración:
sudo tar -czf searxng-backup-$(date +%Y%m%d).tar.gz /usr/local/searxng-docker/searxng/
Esto preserva tu archivo settings.yml personalizado y cualquier otro ajuste realizado.
Monitorizar logs
Para diagnosticar problemas o monitorizar el uso, accede a los logs en tiempo real:
# Ver logs de todos los servicios
sudo docker compose logs -f
# Ver solo logs del motor de búsqueda
sudo docker compose logs -f searxng
# Ver últimas 100 líneas
sudo docker compose logs --tail=100
Casos de uso de SearXNG Docker Compose
Este metabuscador privado tiene aplicaciones prácticas en diversos contextos, más allá del uso personal básico.
Búsquedas corporativas privadas
Empresas preocupadas por la confidencialidad pueden ofrecer este servicio a sus empleados, evitando que búsquedas relacionadas con proyectos sensibles se filtren a terceros. Es especialmente relevante en sectores regulados o con obligaciones de cumplimiento estrictas (GDPR, HIPAA, etc.).
Educación y bibliotecas
Instituciones educativas pueden implementar esta solución para proteger la privacidad de estudiantes menores de edad, cumpliendo con regulaciones como COPPA mientras ofrecen acceso completo a recursos de búsqueda.
Periodismo e investigación
Periodistas investigando temas sensibles o investigadores académicos pueden beneficiarse enormemente de búsquedas que no queden registradas ni asociadas a su identidad, especialmente al investigar gobiernos o corporaciones poderosas.
Instancia pública comunitaria
Muchos activistas de privacidad mantienen instancias públicas del motor para que cualquiera pueda usarlas. Si tienes ancho de banda suficiente y quieres contribuir al bien común, puedes ofrecer tu instancia a la comunidad.
Solución de problemas comunes
Aunque la instalación suele ser fluida, pueden surgir algunos problemas típicos. Aquí las soluciones a los más frecuentes.
Error: «Address already in use»
Si algún puerto (80, 443 o 8080) ya está ocupado, verás este error. Identifica qué proceso lo usa con sudo lsof -i :PUERTO y detén el servicio conflictivo o modifica los puertos en el archivo compose.
Resultados muy lentos
Si las búsquedas tardan demasiado, verifica que Redis está funcionando correctamente (docker compose ps). También puedes reducir el número de motores consultados simultáneamente o aumentar los timeouts en settings.yml.
CAPTCHAs frecuentes en resultados
Algunos motores como Google pueden bloquear tu IP si detectan muchas peticiones. Soluciones: configurar rotación de User-Agents, usar menos ese motor específico, o implementar proxies rotativos para distribuir las peticiones.
SSL no funciona con Caddy
Verifica que los puertos 80 y 443 están accesibles desde internet, que el dominio apunta correctamente a tu IP, y que configuraste un email válido en el archivo .env. Revisa logs de Caddy con docker compose logs caddy.
Comparativa: SearXNG vs alternativas
¿Cómo se compara esta solución con otras opciones de búsqueda privada disponibles?
SearXNG vs DuckDuckGo
DuckDuckGo es un servicio centralizado que, aunque promete privacidad, sigue siendo una empresa que controlas menos que tu propia instancia. Con esta herramienta tienes control absoluto, código auditable y garantía de que nadie más accede a tus búsquedas.
SearXNG vs Whoogle
Whoogle solo consulta Google, mientras que este sistema agrega resultados de docenas de fuentes. Esto ofrece perspectivas más diversas y reduce dependencia de un único proveedor.
SearXNG vs Brave Search
Brave Search es otro servicio centralizado con índice propio. Aunque respeta privacidad, no es self-hosted ni open-source. Esta alternativa te da transparencia total del código y datos.
Preguntas frecuentes sobre SearXNG Docker Compose
¿Es legal ejecutar mi propia instancia de SearXNG?
Sí, es completamente legal. El software es open-source bajo licencia AGPL-3.0 y consultar APIs públicas de buscadores para uso personal/privado está permitido. Solo evita hacer scraping masivo o violar términos de servicio específicos.
¿Puedo hacer pública mi instancia para que otros la usen?
Sí, de hecho existen unas 70 instancias públicas listadas en la web oficial del proyecto. Asegúrate de tener suficiente ancho de banda, configurar rate limiting apropiado y considerar las implicaciones legales según tu jurisdicción.
¿Cómo afecta al rendimiento consultar tantos motores simultáneamente?
Las peticiones se realizan en paralelo, no secuencialmente. Con caché Redis configurado y timeouts razonables (3-5 segundos), los resultados suelen aparecer en 1-3 segundos. El rendimiento es comparable a usar un buscador tradicional directamente.
¿Necesito dominio propio o puedo usar solo IP?
Puedes acceder perfectamente mediante IP. El dominio solo es necesario si quieres SSL válido automático con Let’s Encrypt. Para uso local o mediante IP, puedes eliminar Caddy del compose y acceder directamente al puerto 8080.
¿Qué tan seguro es realmente frente a rastreo?
Cuando ejecutas tu propia instancia, las búsquedas nunca se registran localmente. Los motores externos ven peticiones desde tu servidor (no tu IP personal), sin cookies persistentes ni identificadores. Combinado con Tor, el nivel de anonimato es máximo.
Conclusión
Implementar searxng docker compose en tu infraestructura es una de las mejores decisiones que puedes tomar si valoras tu privacidad digital. En menos de 10 minutos obtienes un motor de búsqueda completo, privado y totalmente bajo tu control, sin depender de corporaciones que monetizan cada búsqueda que realizas.
La combinación de arquitectura basada en contenedores Docker, configuración simplificada mediante Compose, SSL automático con Caddy y el potente motor escrito en Python hacen de esta solución una alternativa seria y profesional. Con más de 23.000 estrellas en GitHub y una comunidad activa de desarrollo, el proyecto demuestra madurez y sostenibilidad a largo plazo.
Ya sea para uso personal, corporativo, educativo o para ofrecer un servicio público a tu comunidad, esta herramienta te empodera con control total sobre una función tan fundamental como la búsqueda de información en internet. Puedes consultar la documentación oficial para profundizar en configuraciones avanzadas, explorar el repositorio Docker oficial para ver ejemplos adicionales, o unirte a la comunidad en Matrix para resolver dudas específicas.
Si buscas complementar tu stack de privacidad, considera combinar este buscador con otras soluciones como Nextcloud para almacenamiento, Vaultwarden para contraseñas o Pi-hole para bloqueo de anuncios a nivel de red. La privacidad digital se construye con múltiples capas, y controlar tu propio motor de búsqueda es una de las más importantes.
