Search & Vectors 1 service 512 MiB RAM 3 GB disk

SearXNG

A private metasearch engine - 200+ engines, no tracking. Your search homepage and your RAG backend.

One-click deploy, from $5/mo on a Miget plan.

SearXNG is a privacy-respecting metasearch engine: it queries 200+ search engines and blends the results, with no tracking, no profiling, and no ads. Use it as your own search homepage that never builds a profile on you, on your own domain.

It is also the standard web-search backend for AI: point this catalogue’s open-webui, litellm, dify, or flowise at it to give models live web results, keeping the queries on your own infrastructure instead of a third-party search API.

The image self-serves HTTP on port 5000 via SEARXNG_PORT - no separate proxy needed. Set a secret so sessions survive restarts; for a public, rate-limited instance, add a managed Valkey. Otherwise it is a single light container.

#what you get

  • Aggregates 200+ engines; no tracking, no ads, no profiling
  • Great private search homepage on your own domain
  • A clean web-search backend for RAG and AI agents
  • Self-serves HTTP on port 5000 - no proxy needed
  • Optional managed Valkey for rate-limiting public instances
  • AGPL-3.0, light footprint

#topology

ServiceRolePublic
searxngmetasearch engine (:5000)yes (or private for RAG)
config volumesettings.yml + cacheno

#miget sizing

// this stack needs

512 MiB RAM · 3 GB disk · 1 service

512 MiB is comfortable for a personal or RAG instance. Add a managed Valkey and SEARXNG_LIMITER=true only if you expose it publicly and want rate-limiting.

Hobby - recommended fit

$5/mo

1 vCPU · 512 MiB · 10 GiB disk

Headroom for your own apps: 1 GiB at $7/mo

Professional - production

$22/mo

1 vCPU · 2 GiB · 10 GiB disk

Dedicated resources, production SLOs - plan details

One Miget plan is a fixed pool of compute - the whole stack (managed databases included) deploys inside it, and anything left over runs your other apps. No per-service or per-seat math.

#vs. the managed service

What the hosted equivalents charge, against the flat Miget plan this stack fits on. Prices as of June 2026, sources linked.

ServicePlanMonthlyWhat you get
SearXNG on Miget 512 MiB plan$5this whole stack, flat - no usage meters, and room left for your own apps
KagiProfessional~$10$10/mo for private search

Kagi charges for private search; SearXNG is free software giving you private metasearch on your own domain (and a RAG backend).

#vs. other PaaS

Estimated monthly cost of running this exact stack (512 MiB RAM, 3 GB disk, 1 container) elsewhere, from published June 2026 rates.

PlatformEst. monthlyNotes
Miget $5 flat compose stacks first-class: one deploy, dedicated vCPU, managed Postgres/Valkey, volumes and TLS all included in the plan
Heroku ~$25 no volumes; nothing between 1 GB ($50) and 2.5 GB ($250) dynos - 2 GB containers cost far more than shown
DO App Platform ~$11 no persistent volumes - stateful containers need managed DBs/Spaces (base $5 Spaces included here)
Render ~$8 per-service instances (0.5 GB $7, 2 GB $25) - every container is its own paid service
Railway ~$5 usage-based ($10/GB RAM-mo); vCPU billed separately at $20/vCPU-mo on top
Fly.io ~$3 cheapest sticker price - but burstable shared CPUs (1/16 core; dedicated vCPUs cost ~2-3×), no compose deploys (one app per container, manual wiring), managed DBs billed extra

Estimates assume RAM fully allocated at published on-demand rates - and sticker price isn't the whole comparison: the cheaper rows buy burstable shared CPUs, per-service wiring instead of a compose deploy, and managed databases billed separately. Heroku and DO App Platform have no persistent volumes at all - stateful stacks like this one need workarounds there.

#deploy it

On Miget

  1. Create a Compose Stack in app.miget.com pointing at the templates repository
  2. Set the stack path to searxng
  3. Set the required variables:
    • SEARXNG_SECRET, set explicitly so sessions survive restarts
    • SEARXNG_BASE_URL, the https domain, with a trailing slash
  4. Deploy. Miget layers compose.miget.yaml (RAM, privacy, volumes, managed services) automatically

Locally first?

Every template is portable, vanilla Docker Compose - the Miget overrides are ignored locally:

git clone https://github.com/deployable-sh/stacks
cd miget-compose-templates/searxng
docker compose up -d

Same files, same behavior. The template README covers connection strings and scaling notes.

#faq

Can AI tools use it for web search?

Yes - that is one of its best uses. open-webui, litellm, dify, and flowise all support SearXNG as a web-search tool, so your models get live results while the search queries stay on your own infrastructure.

Do I need Redis or a separate proxy?

No. The image self-serves HTTP on port 5000 (via SEARXNG_PORT) with no extra proxy. A managed Valkey is optional - only needed for the rate-limiter on a public instance.

Why set SEARXNG_SECRET explicitly?

If you do not set it, SearXNG generates a new secret on each restart, which resets sessions. Setting it (a long random string) keeps the instance stable across redeploys on Miget.

Ship SearXNG today

One compose stack, 512 MiB of RAM, from $5/month flat, and it runs on your laptop with the same files.