Search stack operator notes
Live stack path on PD:
/mnt/docker-ssd/docker/compose/search
Live SearXNG config path on PD:
/mnt/tank/docker/appdata/searxng/settings.yml
Known update-sensitive points:
-
Firecrawl containers share Gluetun's network namespace.
firecrawl-playwright-serviceandfirecrawl-apirun withnetwork_mode: service:search-gluetun.- If
search-gluetunis recreated during an update, those containers must be recreated too or they can die with namespace errors like:joining network namespace of container ... No such containergetaddrinfo EAI_AGAIN firecrawl-redis
- The compose file now uses long-form
depends_onwithrestart: trueso explicit Compose updates tosearch-gluetunalso restart the Firecrawl dependents.
-
SearXNG upstream can ship config drift.
- After an image update, compare
/mnt/tank/docker/appdata/searxng/settings.ymlagainst/mnt/tank/docker/appdata/searxng/settings.yml.new. - Merge upstream changes deliberately instead of overwriting local behavior blindly.
- One confirmed breakage was an obsolete
askengine stanza lingering in the live settings after upstream removed that engine module; the fix was to remove the stale stanza and restartsearxng.
- After an image update, compare
Basic verification after updates:
sudo -n docker compose -f /mnt/docker-ssd/docker/compose/search/docker-compose.yaml pscurl -sS "http://127.0.0.1:8888/search?q=test&format=json" | headcurl -sS http://127.0.0.1:3302/- optional functional scrape smoke test:
- POST
{"url":"https://example.com"}tohttp://127.0.0.1:3302/v1/scrape
- POST
Rollback-first notes:
- Back up
docker-compose.yamlbefore live edits under/home/truenas_admin/doris-backups/ - Back up
settings.ymlbefore SearXNG config edits under/home/truenas_admin/doris-backups/ - If a Compose-side update breaks the stack and quick repair fails, restore the previous compose/config files and
docker compose up -dthe search stack again.
AI maintenance flow:
- Homelab Docker maintenance is seeded into the Hermes
homelabkanban board on a daily cadence. - The maintenance lane should treat this stack as update-sensitive and must run the verification commands above after any search-stack image change.
- If the stack cannot be repaired quickly after an update, roll back first, then leave the exact failure evidence in the kanban task so alerts route cleanly.