Files
hermes-skills/skills/devops/docker-service-deployment/references/searxng-deployment.md
T

1.3 KiB

SearXNG Self-Hosted Search on Core

Deployed Jul 7, 2026 via Docker on Core. Port 8888 (127.0.0.1 only).

Docker Compose

services:
  searxng:
    image: searxng/searxng:latest
    container_name: searxng
    restart: always
    ports:
      - "127.0.0.1:8888:8080"
    volumes:
      - ./searxng-data:/etc/searxng:rw
      - ./searxng-themes:/usr/local/searxng/searx/static/themes:rw
    environment:
      - SEARXNG_BASE_URL=http://localhost:8080
      - SEARXNG_SECRET_KEY=<auto-generated>

Location: /root/docker/searxng/docker-compose.yml Settings: /root/docker/searxng/searxng-data/settings.yml (added search.formats: [html, json] to enable JSON API)

Usage

Search via JSON API:

curl -s "http://127.0.0.1:8888/search?q=query&format=json"

Motivation

  • Hermes web tools (web_search, web_extract) require Firecrawl API key — not yet configured
  • SearXNG provides unlimited, self-hosted search as fallback
  • Used via terminal curl in Hermes — not as seamless as native tools but free and unlimited

Relation to Firecrawl

SearXNG + Firecrawl complement each other:

  • SearXNG: unlimited search (finding URLs)
  • Firecrawl: page content extraction (getting text from URLs)
  • With both, Firecrawl only handles extraction — free tier lasts much longer