Status : IMPLEMENTEE
Le settings.yml de SearXNG est un fichier loose sur prod-portainer (/home/gouroubleu/apps/searxng/settings.yml), pas versionné, pas backupé.
Ajouter SearXNG comme 2ème sidecar dans le projet connectors-api, à côté du sidecar WireGuard existant. La config settings.yml sera versionnée dans le repo GitLab.
searxng/settings.yml dans le repo connectors-apiChemin : /stock_8to/33800-stack/projects/connectors-api/searxng/settings.yml
Contenu : la config optimisée actuelle (27 moteurs keep_only).
searxng/Dockerfile minimalFROM searxng/searxng:latest
COPY settings.yml /etc/searxng/settings.yml
On embed le settings.yml dans l'image pour éviter les bind mounts.
.gitlab-ci.yml pour builder l'image customNon nécessaire — le Dockerfile est dans un sous-dossier du repo connectors-api. Smart-deploy peut gérer le build du sidecar si l'image est pushée au registry. Alternativement, on peut builder et push manuellement une fois, puis smart-deploy utilise l'image du registry.
Option simple : pas de CI/CD séparé, on build+push l'image manuellement à chaque modif de settings.yml :
cd connectors-api/searxng
docker build -t registry.33800.nowhere84.com/gouroubleu/searxng:latest .
docker push registry.33800.nowhere84.com/gouroubleu/searxng:latest
conf.prod.gouroubleu.ymlsidecars:
# Sidecar WireGuard existant
- name: "wireguard-sidecar"
...
# Sidecar SearXNG
- name: "searxng"
image: "registry.33800.nowhere84.com/gouroubleu/searxng:latest"
ports:
- "8888:8080"
volumes:
- "searxng-data:/var/cache/searxng"
networks:
- "supabase-prod_supabase-prod"
env:
SEARXNG_BASE_URL: "https://search.33800.nowhere84.com"
health: "/healthz"
ssh prod-portainer "docker stop searxng && docker rm searxng"
Actuellement connectors-api utilise https://search.33800.nowhere84.com (via nginx). Comme SearXNG sera dans le même network, on pourrait utiliser http://searxng:8080 en interne. Mais ce n'est pas obligatoire vu le network_mode: service:wireguard-sidecar — à vérifier si le sidecar SearXNG est accessible via localhost ou via le network Docker.
Le plus simple : garder l'accès via nginx comme aujourd'hui. Pas de changement dans le code applicatif.
| Fichier | Action |
|---|---|
connectors-api/searxng/settings.yml |
Créer (config optimisée) |
connectors-api/searxng/Dockerfile |
Créer (FROM + COPY) |
connectors-api/conf.prod.gouroubleu.yml |
Ajouter sidecar searxng |