searxng-space / README.md
DecEric's picture
Switch SearXNG Space back to controlled private-friendly profile
cc8d700
|
Raw
History Blame Contribute Delete
2.88 kB
metadata
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 SpaceSearXNG 仓库骨架。

目标是先在 Hugging Face 免费 CPU Space 上跑起来,因此这里做了几项偏“保守”的取舍:

  • 使用官方 searxng/searxng 容器镜像
  • 只暴露一个端口给 Hugging Face Space
  • 关闭需要 Valkeylimiter
  • 关闭 image_proxy
  • 使用简化设置,优先保证可启动和易维护
  • 精简为更稳的知识/开发检索引擎集,作为受控/私用版实例

目录结构

.
├── 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_URLINSTANCE_NAMEAUTOCOMPLETE
  • secret_key 保持为官方默认占位值,首次启动时由官方入口脚本自动替换

当前默认保留的 engines

为了更适合 私用/受控访问,这个版本默认只保留相对更稳的来源:

  • wikipedia
  • wikidata
  • stackoverflow
  • askubuntu
  • superuser
  • github
  • docker hub
  • pypi
  • openstreetmap
  • photon

这个策略的含义是:

  • 优点:更稳,更适合 Hugging Face 上的私用实例
  • 缺点:它不再是完整的通用网页搜索站

注意事项

  • Hugging Face 免费 Space 空闲后会休眠
  • 默认磁盘不是持久化存储,缓存会在重启后丢失
  • 这个骨架更适合个人使用、测试和 PoC
  • 免费 Space 会休眠,所以不适合做高可用公共实例
  • 由于没有 Valkeylimiter 不能启用;公开实例抗滥用能力会比较弱
  • 当前推荐用途是私用、受控访问、小范围内部使用
  • 如果你想做公开长期稳定实例,后面通常还要继续调:
    • engines 精简
    • bot 防护
    • 自定义主题
    • 自定义品牌信息

下一步建议

你可以继续让我帮你做其中一个:

  1. 精简 engines,减少被上游封禁的概率
  2. 加一个更像产品的自定义品牌页
  3. 直接补一份可 git init / 推送到 Hugging Face 的发布说明