Spaces:
Paused
Paused
| title: SearXNG Docker Space | |
| emoji: 🔎 | |
| colorFrom: blue | |
| colorTo: green | |
| sdk: docker | |
| app_port: 8080 | |
| pinned: false | |
| license: agpl-3.0 | |
| # SearXNG on Hugging Face Spaces | |
| 这是一个适合部署到 Hugging Face `Docker Space` 的 `SearXNG` 仓库骨架。 | |
| 目标是先在 Hugging Face 免费 CPU Space 上跑起来,因此这里做了几项偏“保守”的取舍: | |
| - 使用官方 `searxng/searxng` 容器镜像 | |
| - 只暴露一个端口给 Hugging Face Space | |
| - 关闭需要 `Valkey` 的 `limiter` | |
| - 关闭 `image_proxy` | |
| - 使用简化设置,优先保证可启动和易维护 | |
| - 精简为更稳的知识/开发检索引擎集,作为受控/私用版实例 | |
| ## 目录结构 | |
| ```text | |
| . | |
| ├── Dockerfile | |
| ├── README.md | |
| ├── .dockerignore | |
| └── searxng | |
| └── settings.yml | |
| ``` | |
| ## 如何使用 | |
| 1. 在 Hugging Face 创建一个新的 Space | |
| 2. 选择 `Docker` 作为 SDK | |
| 3. 把这个目录里的文件推到该 Space 仓库根目录 | |
| 4. 在 Space Settings 里配置下面这些变量 | |
| ## 推荐配置 | |
| ### Variables | |
| - `BASE_URL` | |
| - 推荐填写你 Space 的公网地址 | |
| - 例如:`https://your-name-your-space.hf.space/` | |
| - `INSTANCE_NAME` | |
| - 可选 | |
| - 例如:`My SearXNG` | |
| - `AUTOCOMPLETE` | |
| - 可选 | |
| - 例如:`duckduckgo` | |
| ## 这个骨架默认做了什么 | |
| - 监听 `0.0.0.0:8080` | |
| - 适配 Hugging Face 的 `app_port: 8080` | |
| - 用 `/etc/searxng/settings.yml` 覆盖默认配置 | |
| - 保留 `use_default_settings: true`,只做少量必要覆盖 | |
| - 使用官方镜像入口脚本处理 `BASE_URL`、`INSTANCE_NAME`、`AUTOCOMPLETE` | |
| - `secret_key` 保持为官方默认占位值,首次启动时由官方入口脚本自动替换 | |
| ## 当前默认保留的 engines | |
| 为了更适合 `私用/受控访问`,这个版本默认只保留相对更稳的来源: | |
| - `wikipedia` | |
| - `wikidata` | |
| - `stackoverflow` | |
| - `askubuntu` | |
| - `superuser` | |
| - `github` | |
| - `docker hub` | |
| - `pypi` | |
| - `openstreetmap` | |
| - `photon` | |
| 这个策略的含义是: | |
| - 优点:更稳,更适合 Hugging Face 上的私用实例 | |
| - 缺点:它不再是完整的通用网页搜索站 | |
| ## 注意事项 | |
| - Hugging Face 免费 Space 空闲后会休眠 | |
| - 默认磁盘不是持久化存储,缓存会在重启后丢失 | |
| - 这个骨架更适合个人使用、测试和 PoC | |
| - 免费 Space 会休眠,所以不适合做高可用公共实例 | |
| - 由于没有 `Valkey`,`limiter` 不能启用;公开实例抗滥用能力会比较弱 | |
| - 当前推荐用途是私用、受控访问、小范围内部使用 | |
| - 如果你想做公开长期稳定实例,后面通常还要继续调: | |
| - engines 精简 | |
| - bot 防护 | |
| - 自定义主题 | |
| - 自定义品牌信息 | |
| ## 下一步建议 | |
| 你可以继续让我帮你做其中一个: | |
| 1. 精简 `engines`,减少被上游封禁的概率 | |
| 2. 加一个更像产品的自定义品牌页 | |
| 3. 直接补一份可 `git init` / 推送到 Hugging Face 的发布说明 | |