1.4 KiB
1.4 KiB
SearXNG — Self-Hosted Search Engine
Deployed on Core (/root/docker/searxng/) via Docker Compose. Used as a local search engine when Firecrawl's API key is not configured.
Connection details
- URL:
http://127.0.0.1:8888 - JSON API:
http://127.0.0.1:8888/search?q=QUERY&format=json - Container:
searxng - Auto-start: Docker restart policy
- Settings:
/root/docker/searxng/searxng-data/settings.yml
Configuration
The settings.yml file enables both HTML and JSON formats:
search:
formats:
- html
- json
Usage from agent
curl -s "http://127.0.0.1:8888/search?q=QUERY&format=json" | python3 -c "
import sys, json
d = json.load(sys.stdin)
for r in d.get('results',[])[:N]:
print(f'{r.get(\"title\",\"?\")} - {r.get(\"url\",\"?\")}')
"
Limitations
- No extraction. SearXNG returns search results (title + URL + snippet) but does not extract full page content. For full page extraction, use Firecrawl or
curl+ HTML stripping. - Local only. Bound to 127.0.0.1 — not accessible from the network. Access via terminal on Core.
- Rate limited. Default rate limit is 120 requests/hour from a single IP.
Relationship to Firecrawl
| Capability | SearXNG | Firecrawl |
|---|---|---|
| Search (find links) | ✅ Unlimited | ⚠️ 500/mo free |
| Extract (get page content) | ❌ | ✅ Clean markdown |
| API key needed | No | Yes |
| Self-hosted | Yes | No (cloud) |