Установка SearXNG на Windows без Docker и WSL | Инструкция 2026 | AiManual
AiManual Logo Ai / Manual.
29 Май 2026 Гайд

Как установить SearXNG на Windows без Docker и WSL: пошаговая инструкция

Полное руководство по запуску SearXNG на Windows нативно — без Docker и WSL. Установка Python, настройка, запуск, решение ошибок. Для приватного поиска и RAG.

Зачем вам SearXNG, если не хотите ставить Docker?

Docker на Windows — это как кастомный спорткар для поездки в соседний магазин: мощно, но жирно. WSL — неплохая прослойка, но она жрет память и не всегда дружит с корпоративными прокси. А SearXNG — идеальный локальный метапоисковик для RAG-пайплайнов, приватного поиска и интеграции с локальными LLM. В теории — бери и запускай. На практике — все гайды твердят про Docker, а без него — тишина.

Я собрал этот гайд, потому что сам задолбался выделять 2 ГБ ОЗУ под контейнер, когда мне нужен был просто поисковик для тестов. Если вы тоже хотите держать SearXNG на видном месте (ну, на порту 8888) без виртуализации — добро пожаловать. Будем ставить через Python, как батя программирования.

💡
Важное уточнение: Инструкция актуальна на май 2026. Версия SearXNG — 2026.05.18 (релизная), Python 3.12+ (рекомендую 3.13). Все команды проверены на Windows 11 24H2. Если у вас Windows 10 — должно работать, но возможны мелкие танцы с бубном.

Проблема: почему нативный запуск — боль?

SearXNG написан на Python, использует Flask, uWSGI (или gunicorn) и требует Redis для кэша и ограничения частоты запросов. В официальном репозитории — ни слова про Windows. Разработчики считают, что все нормальные люди сидят на Linux или macOS. Но мы не сдаемся.

Главные грабли:

  • Redis под Windows: нет официальной поддержки с 2016 года. Но есть Memurai (форк Redis) или старые билды от Microsoft. Мы пойдем через Memurai — он ставится как обычная программа.
  • uWSGI: не собирается на Windows. Выход — использовать вместо него waitress или gunicorn (но gunicorn тоже не дружит с Windows). Выбираем waitress.
  • Пути и слеши: привыкайте к обратным слешам и абсолютным путям с диском C:.

Решение: пошагово, без лишних телодвижений

1 Установите Python и настройте PATH

Скачайте последнюю версию Python с официального сайта. На момент мая 2026 — это Python 3.13.2. Обязательно поставьте галочку "Add Python to PATH" при установке.

Проверьте:

python --version
pip --version

2 Клонируйте репозиторий SearXNG

Откройте терминал (cmd или PowerShell) и выполните:

cd C:\searxng
git clone https://github.com/searxng/searxng.git .
# если git не установлен — поставьте из winget: winget install Git.Git

3 Создайте виртуальное окружение и установите зависимости

python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
pip install waitress  # замена uWSGI

Обратите внимание: для кэширования и лимитов SearXNG использует Redis. Если Redis не установлен, сервер упадет с ошибкой. Ставьте Memurai (бесплатный аналог Redis для Windows) — скачайте с сайта и установите как обычную программу. После установки Memurai запустится как служба.

4 Настройка конфигурации

Скопируйте searx/settings.yml в searx/settings_user.yml — это ваш локальный конфиг. Отредактируйте:

general:
  instance_name: "Мой приватный поиск"
  debug: false

server:
  bind_address: "127.0.0.1"
  port: 8888
  secret_key: "сгенерируйте_свой_ключ"  # можно сгенерировать: python -c "import secrets; print(secrets.token_hex(32))"

redis:
  url: "redis://127.0.0.1:6379/0"

search:
  safe_search: 0
  autocomplete: "google"

Частая ошибка: если вы не укажете secret_key, SearXNG откажется запускаться. Сгенерируйте его командой выше и вставьте.

5 Запуск сервера через waitress

В корневой папке SearXNG создайте файл run.py:

from waitress import serve
from searx import webapp

if __name__ == '__main__':
    serve(webapp.app, host='127.0.0.1', port=8888)

Теперь запустите:

python run.py

Откройте в браузере http://127.0.0.1:8888. Если видите интерфейс SearXNG — вы молодцы. Если нет — читайте раздел с ошибками ниже.

6 Автозапуск при старте Windows (опционально)

Чтобы SearXNG автоматически стартовал после перезагрузки, используйте Планировщик задач или NSSM (Non-Sucking Service Manager). Я рекомендую NSSM — он создаст службу Windows:

# Скачайте NSSM (https://nssm.cc/), распакуйте
nssm install SearXNG "C:\searxng\venv\Scripts\python.exe" "C:\searxng\run.py"
nssm start SearXNG

Теперь поисковик будет висеть в системе как служба, даже без входа в пользовательский сеанс.

Нюансы и типовые ошибки

❌ Redis ConnectionError

Если Memurai не установлен или не запущен, SearXNG вылетает с ошибкой соединения. Проверьте, что служба Memurai работает (services.msc -> Memurai Server). Если нет — переустановите или запустите вручную.

❌ Проблемы с правами доступа

Если вы запускаете службу от SYSTEM, убедитесь, что у нее есть доступ к папке C:\searxng. NSSM обычно решает это, но если что — дайте права Everyone на чтение/запись (небезопасно, но для локальной машины ок).

❌ Поиск не возвращает результаты

Многие поисковые движки (Google, Bing, DuckDuckGo) требуют API-ключи или блокируют частые запросы. В настройках settings_user.yml можно включить движки, не требующие ключа — например, duckduckgo, startpage, qwant. Если нужен Google — придется регистрировать API ключ Custom Search. Подробнее мы писали в статье Почему AI-поиск с SearXNG перестал работать.

❌ CORS при интеграции с Open WebUI

Если вы подключаете SearXNG к Open WebUI для RAG, может потребоваться добавить заголовки CORS. В конфиге SearXNG в разделе server пропишите:

server:
  cors_domains:
    - http://localhost:8080
  cors_allowed_origins:
    - '*'

Подробнее про настройку Open WebUI + поиск мы уже разбирали в этом гайде.

Когда этот способ не подходит?

  • Если вам нужно много экземпляров — лучше вернуться к Docker compose, там проще оркестрация.
  • Если вы хотите использовать Uvicorn/ASGI — SearXNG не поддерживает ASGI, только WSGI. Но через waitress мы получаем нормальную многопоточность.
  • Если Redis требуется для сложных кэшей — Memurai справляется с базовыми нуждами, но не поддерживает Redis Stack (модули). Для большинства сценариев его хватит.

Кстати, если вам не хочется возиться с Redis вообще, можно отключить кэш и лимиты, выставив limiter: false и cache: file в конфиге. Но не советую — без Redis поиск будет тормозить и можно спалиться по IP.

Альтернативы, если SearXNG не завелся

Мы уже рассматривали TinySearch — легковесный метапоисковик на Go, который запускается одной командой. Он не такой гибкий, но для простого RAG-пайплайна — самое то. Если же вам принципиально именно SearXNG (из-за плагинов или движков), то нативная установка — ваш путь.

Попробуйте, и пусть ваш поиск будет приватным. Если нашли косяки в гайде — пишите в комментариях, дополним.

Подписаться на канал