deploy-searxng
О программе
Этот навык развертывает автономный экземпляр SearXNG с использованием Docker Compose, обратного прокси Nginx и пользовательской конфигурации поисковой системы. Он ориентирован на конфиденциальность, производительность и настройку интерфейса для создания приватного агрегированного поиска без отслеживания. Используйте его, когда вам требуется автономная альтернатива коммерческим поисковым системам.
Быстрая установка
Claude Code
Рекомендуетсяnpx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/deploy-searxngСкопируйте и вставьте эту команду в Claude Code для установки этого навыка
Документация
name: deploy-searxng locale: es source_locale: en source_commit: 6f65f316 translator: claude-sonnet-4-6 translation_date: 2026-03-16 description: > Desplegar una instancia auto-alojada de SearXNG con Docker Compose, proxy inverso Nginx, y configuración personalizada de motores de búsqueda. Cubrir seguridad, rendimiento, y personalización de la interfaz. Usar cuando se necesite un metabuscador privado, búsqueda agregada sin rastreo, o una alternativa auto-alojada a buscadores comerciales. license: MIT allowed-tools: Read Write Edit Bash Grep Glob metadata: author: Philipp Thoss version: "1.0" domain: containerization complexity: intermediate language: multi tags: searxng, search-engine, self-hosted, docker, privacy
Desplegar SearXNG
Desplegar un metabuscador SearXNG auto-alojado con Docker y configuración personalizada.
Cuándo Usar
- Necesitando un metabuscador privado sin rastreo
- Queriendo agregar resultados de múltiples motores de búsqueda
- Desplegando una alternativa auto-alojada a buscadores comerciales
- Requiriendo búsqueda personalizable para un equipo u organización
- Integrando búsqueda privada con otras herramientas (MCP, API)
Entradas
- Requerido: Servidor con Docker y Docker Compose instalados
- Requerido: Nombre de dominio (para acceso externo) o acceso localhost
- Opcional: Certificados TLS para HTTPS
- Opcional: Configuración de motores de búsqueda preferidos
- Opcional: Personalización de interfaz (tema, idioma)
Procedimiento
Paso 1: Configurar Estructura del Proyecto
mkdir -p searxng/{config,data}
cd searxng
Crear docker-compose.yml:
version: '3.8'
services:
searxng:
image: searxng/searxng:latest
container_name: searxng
ports:
- "8080:8080"
volumes:
- ./config:/etc/searxng:rw
- ./data:/var/log/searxng:rw
environment:
- SEARXNG_BASE_URL=https://busqueda.ejemplo.com/
- SEARXNG_SECRET_KEY=clave_secreta_larga_y_aleatoria
cap_drop:
- ALL
cap_add:
- CHOWN
- SETGID
- SETUID
restart: unless-stopped
Esperado: Estructura de directorios creada, docker-compose.yml configurado.
En caso de fallo: Verificar permisos de escritura en los directorios, asegurar que Docker está instalado.
Paso 2: Configurar SearXNG
Crear config/settings.yml:
use_default_settings: true
general:
debug: false
instance_name: "Mi Buscador"
search:
safe_search: 0
autocomplete: "google"
default_lang: "es"
server:
secret_key: "clave_secreta_larga_y_aleatoria"
bind_address: "0.0.0.0"
port: 8080
limiter: true
ui:
default_theme: simple
default_locale: es
query_in_title: true
engines:
- name: google
engine: google
shortcut: g
disabled: false
- name: duckduckgo
engine: duckduckgo
shortcut: ddg
disabled: false
- name: wikipedia
engine: wikipedia
shortcut: wp
disabled: false
Esperado: SearXNG configurado con motores de búsqueda, idioma predeterminado, y seguridad.
En caso de fallo: Validar sintaxis YAML, verificar que el secret_key es único y largo.
Paso 3: Configurar Proxy Inverso (Opcional)
Para acceso externo con HTTPS, configurar Nginx:
server {
listen 443 ssl http2;
server_name busqueda.ejemplo.com;
ssl_certificate /etc/ssl/certs/cert.pem;
ssl_certificate_key /etc/ssl/private/key.pem;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Limitar acceso (opcional)
# allow 192.168.0.0/16;
# deny all;
}
}
Esperado: SearXNG accesible vía HTTPS a través de Nginx.
En caso de fallo: Verificar certificados TLS, comprobar que Nginx puede resolver el upstream.
Paso 4: Iniciar y Verificar
# Iniciar SearXNG
docker compose up -d
# Verificar estado
docker compose ps
docker compose logs searxng
# Probar búsqueda
curl "http://localhost:8080/search?q=test&format=json"
Esperado: SearXNG ejecutándose y respondiendo a consultas de búsqueda.
En caso de fallo: Revisar logs del contenedor, verificar configuración de motores de búsqueda, comprobar conectividad de red.
Validación
- SearXNG se inicia sin errores
- La interfaz web es accesible y funcional
- Las búsquedas devuelven resultados de múltiples motores
- El idioma predeterminado es el configurado
- Las capacidades de seguridad están limitadas (cap_drop: ALL)
- HTTPS funciona a través del proxy inverso (si está configurado)
Errores Comunes
- Secret key débil o predeterminada: Usar una clave aleatoria larga. SearXNG rechaza claves débiles.
- Rate limiting de motores: Los motores de búsqueda pueden bloquear IPs con muchas solicitudes. Habilitar el limiter integrado.
- Motores deshabilitados silenciosamente: Algunos motores requieren configuración adicional. Verificar en la página de preferencias.
- Permisos de directorio: Los directorios montados deben ser escribibles por el usuario del contenedor.
- Base URL incorrecta: Debe coincidir exactamente con la URL de acceso, incluyendo el protocolo y la barra final.
Habilidades Relacionadas
configure-nginx- Configuración detallada de Nginx como proxyconfigure-reverse-proxy- Patrones de proxy inverso con Traefiksetup-compose-stack- Stacks Docker Compose multi-servicio
GitHub репозиторий
Похожие навыки
railway-docs
ДокументацияЭтот навык получает актуальную документацию Railway, чтобы отвечать на вопросы о функциях, возможностях или конкретных URL-адресах документации. Он гарантирует, что разработчики получают точную и современную информацию напрямую из официальных источников Railway. Используйте его, когда пользователи спрашивают, как работает Railway, или ссылаются на документацию Railway.
n8n-code-python
ДокументацияЭтот навык Claude предоставляет экспертные рекомендации по написанию кода Python в узлах Code платформы n8n, в частности, по использованию стандартной библиотеки Python и работе со специальным синтаксисом n8n, таким как `_input`, `_json` и `_node`. Он помогает разработчикам понять ограничения Python в среде n8n и рекомендует использовать JavaScript для большинства рабочих процессов, предлагая решения на Python для конкретных задач по преобразованию данных.
archon
ДокументацияНавык Archon предоставляет семантический поиск на основе RAG и управление проектами через REST API. Используйте его для запросов к документации, управления иерархическими проектами/задачами и выполнения поиска информации с возможностью загрузки документов. Всегда в первую очередь обращайтесь к Archon при поиске во внешней документации, прежде чем использовать другие источники.
n8n-code-javascript
ДокументацияЭтот навык Claude предоставляет экспертные рекомендации по написанию кода JavaScript в узлах Code платформы n8n. Он охватывает важный синтаксис, специфичный для n8n, включая переменные `$input`/`$json`, HTTP-хелперы и работу с DateTime, а также помогает в устранении распространённых ошибок. Используйте его при разработке рабочих процессов в n8n, требующих кастомной обработки JavaScript в узлах Code.
