Docker
Le chemin pris en charge. Rien d’autre à installer : pas de runtime, pas d’étape de build, pas de ressources tierces.
notarum tient dans une seule image Docker et ne demande aucun service externe. Le binaire est statique, pèse environ 38 Mo et embarque tout : le lecteur, l’API, le serveur MCP et le contrat OpenAPI.
Docker
Le chemin pris en charge. Rien d’autre à installer : pas de runtime, pas d’étape de build, pas de ressources tierces.
Un endroit où garder les données
Un volume monté, ou une base Postgres. Sans l’un des deux, tout est perdu au prochain déploiement — voir plus bas.
Environ 1 Go de RAM
Uniquement si vous activez l’index de recherche national, qui garde 428 000 normes en mémoire. Sans lui, bien moins.
Postgres est le meilleur choix pour deux raisons : rien n’est écrit sur disque, donc les sauvegardes relèvent de votre base et sont déjà réglées ; et les écritures massives partent par lots, ce qui compte quand une synchronisation écrit plus d’un million de lignes.
docker run -d -p 8080:8080 \ -e NOTARUM_ALMACEN=postgres \ -e NOTARUM_POSTGRES_DSN='postgres://user:pass@host:5432/notarum?sslmode=disable' \ -e NOTARUM_ADMIN_USUARIO=vous@exemple.com \ -e NOTARUM_ADMIN_CLAVE='un mot de passe long à vous' \ ghcr.io/diegoparras/notarum:latestN’importe quel Postgres 13+ avec contrib convient : unaccent et to_tsvector('spanish', …)
sont ce qui permet la recherche insensible aux accents. L’image pgvector/pgvector:pg17 est un bon
choix : construite sur l’image officielle, elle apporte les deux.
docker run -d -p 8080:8080 \ -v notarum-datos:/datos \ -e NOTARUM_ALMACEN=sqlite \ -e NOTARUM_ADMIN_USUARIO=vous@exemple.com \ -e NOTARUM_ADMIN_CLAVE='un mot de passe long à vous' \ ghcr.io/diegoparras/notarum:latestLe moteur le plus simple, pour essayer. Il sert par date mais n’indexe pas : la recherche plein texte interroge alors le Journal au lieu de répondre localement.
docker run -d -p 8080:8080 -v notarum-datos:/datos \ ghcr.io/diegoparras/notarum:latestOuvrez http://localhost:8080 et vous lisez déjà le Journal du jour.
Connectez-vous avec le compte d’administration défini dans vos variables d’environnement. Si vous n’avez pas fixé de mot de passe, un est généré et affiché une seule fois dans le log.
Ouvrez le panneau sur /admin. Regardez ce qu’il dit du stockage : sur un volume neuf il
dira qu’il a démarré vide, ce qui est normal la première fois. S’il le répète après un
déploiement, vos données ne sont pas conservées.
Synchronisez les catalogues. Synchroniser InfoLEG prend quelques minutes et récupère les 428 000 normes nationales plus les relations de modification. Télécharger le droit provincial prend quelques secondes.
Remplissez le Journal pour la période qui vous intéresse. Avec le texte de chaque avis c’est bien plus long — une requête par avis, au rythme que le Journal tolère — mais c’est ce qui fait que la recherche atteint le corps et pas seulement le sommaire.
Créez un jeton depuis votre compte, pour l’API et le MCP.
Ensuite il se débrouille : les catalogues se rafraîchissent chaque jour et le Journal télécharge une semaine entière le samedi à 4 h du matin.
Tout a une valeur par défaut raisonnable. Celles qui comptent :
| Variable | Ce qu’elle fait |
|---|---|
NOTARUM_ALMACEN | disco, sqlite ou postgres |
NOTARUM_POSTGRES_DSN | La chaîne de connexion complète, ou utilisez _HOST, _BASE, _USUARIO, _CLAVE |
NOTARUM_ADMIN_USUARIO / _CLAVE | Le compte qui administre. Le mot de passe ici garantit de pouvoir toujours revenir |
NOTARUM_ACCESO | abierto, mixto ou cerrado. Modifiable aussi depuis le panneau, à chaud |
NOTARUM_BUSCADOR_INFOLEG | Active la recherche nationale. Coûte environ 480 Mo de mémoire, donc optionnelle |
NOTARUM_ACTUALIZAR_A_LAS | Heure de rafraîchissement des catalogues. Par défaut 05:00 |
NOTARUM_BOLETIN_A_LAS | Heure du téléchargement hebdomadaire du Journal. Par défaut 04:00, le samedi |
NOTARUM_ZONA | Fuseau horaire de ces heures. Par défaut America/Argentina/Buenos_Aires |
NOTARUM_MEMORIA_MAX | Un plafond comme 1GB. Lu depuis le conteneur si absent |
NOTARUM_AUTH | federado délègue la connexion à Lockatus, à côté du formulaire local |
Les variables oui/non comprennent 1/0, si/no, true/false et on/off.
Passer de SQLite à Postgres n’oblige pas à retélécharger les catalogues :
notarum migrar --origen sqlite --db /datos/notarum.dbÀ lancer avec la configuration du nouveau moteur en place et l’ancien comme source. Les entrées expirées ne sont pas reprises, et l’index de recherche est reconstruit plutôt que traduit.