360 Secure SkillHub
360 安全技能中心

SearXNG Docker

该 Skill 通过 Docker Compose 部署本地 SearXNG 元搜索实例,并提供 Python 命令行脚本调用其 JSON 接口,支持 general、news、images、videos、it、science 等分类以及时间范围、语言、指定引擎和结果数量等参数,可输出文本或 JSON,无需 API key。

triwinds
triwinds
热度 74.60
最近更新 2026-05-17 12:51:03
分类:搜索依赖:代码执行 / 第三方 API应用场景:研究

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add searxng-docker
Metadata
name
searxng
description
Search the web using a local SearXNG instance (privacy-respecting metasearch engine). Use when user asks to search, look something up, "搜索", "搜一下", "查一下", or when web_search returns poor results. Supports categories (news, images, videos, IT, science), time filters, language, and multiple engines (Google, Bing, DuckDuckGo, etc.). No API key needed — fully self-hosted.

SearXNG Search Skill

Search the web using a self-hosted SearXNG instance.

When to Use

  • User asks to search, look something up: "搜索", "搜一下", "查一下", "search for", "look up"
  • Need results from multiple engines (Google, Bing, DuckDuckGo, etc.)
  • Need news, images, IT/science, or social media search
  • web_search unavailable or returns poor results

Deployment

Quick Start (Docker Compose)

The docker/ folder in this skill contains a ready-to-use Docker Compose setup. Run it directly — no need to copy files elsewhere.

# 1. Generate a random secret key
sed -i "s/CHANGE_ME_TO_A_RANDOM_STRING/$(openssl rand -hex 16)/" docker/settings.yml

# 2. Start
docker compose -f docker/docker-compose.yml up -d

# 3. Verify
curl -s "http://127.0.0.1:8888/search?q=test&format=json" | python3 -m json.tool | head -5

Configuration

Edit files in the docker/ folder:

  • Port: Default 127.0.0.1:8888 → change in docker-compose.yml ports section
  • Engines: Edit settings.yml engines list (Google, Bing, DuckDuckGo, Wikipedia, GitHub enabled by default)
  • Language: default_lang in settings.yml (default: auto)

Troubleshooting

# Check if running
docker ps | grep searxng

# Restart
docker compose -f docker/docker-compose.yml restart

# View logs
docker logs searxng --tail 50

Usage

All commands use the script at scripts/searxng_search.py (relative to this skill directory). The script defaults to http://127.0.0.1:8888 but accepts --base-url to point elsewhere.

# Basic search
python3 scripts/searxng_search.py "your query"

# Number of results
python3 scripts/searxng_search.py "your query" -n 5

# Language
python3 scripts/searxng_search.py "your query" -l zh    # Chinese
python3 scripts/searxng_search.py "your query" -l en    # English

# Category
python3 scripts/searxng_search.py "your query" -c news
python3 scripts/searxng_search.py "your query" -c images
python3 scripts/searxng_search.py "your query" -c it
python3 scripts/searxng_search.py "your query" -c science

# Time filter
python3 scripts/searxng_search.py "your query" -t day
python3 scripts/searxng_search.py "your query" -t week
python3 scripts/searxng_search.py "your query" -t month

# Specific engines
python3 scripts/searxng_search.py "your query" -e google,bing

# JSON output
python3 scripts/searxng_search.py "your query" --json

# Custom SearXNG URL
python3 scripts/searxng_search.py "your query" --base-url http://192.168.1.100:8888

# Combined
python3 scripts/searxng_search.py "最新科技新闻" -c news -l zh -t week -n 5

Categories

Category Description
general Web search (default)
news News articles
images Image search
videos Video search
it IT / programming
science Scientific articles
files File search
social media Social media posts

Notes

  • SearXNG aggregates and deduplicates results from multiple engines
  • The score field indicates cross-engine ranking confidence
  • No API key needed — fully self-hosted and private