Aller au contenu

Installation

basedb tient dans une seule image Docker, eodia/basedb (amd64 et arm64) : l’interface, l’API et le serveur MCP, servis sur une seule adresse. Elle a besoin d’une base PostgreSQL 16, que le docker-compose.yml fournit.

Prérequis : Docker avec Compose v2. Deux fichiers suffisent, pas besoin du code :

Fenêtre de terminal
mkdir basedb && cd basedb
curl -fsSLO https://raw.githubusercontent.com/eodia/basedb/main/docker-compose.yml
curl -fsSL https://raw.githubusercontent.com/eodia/basedb/main/.env.example -o .env

Ouvrez .env et renseignez les deux seules valeurs obligatoires :

Fenêtre de terminal
POSTGRES_PASSWORD=un-mot-de-passe-solide
# générée une fois pour toutes : openssl rand -base64 32
BASEDB_ENCRYPTION_KEY=…

Puis démarrez :

Fenêtre de terminal
docker compose up -d

Au premier démarrage, basedb crée le catalogue. Ouvrez ensuite http://localhost:3000 : la première page vous demande de créer le compte administrateur, avec votre nom, votre adresse et le mot de passe de votre choix, et vous êtes connecté dans la foulée.

Pour une installation sans intervention, nommez l’administrateur dans .env avec BASEDB_ADMIN_EMAIL : basedb le crée au premier démarrage et affiche son mot de passe une seule fois dans ses journaux (docker compose logs basedb), à moins que vous ne le fixiez avec BASEDB_ADMIN_PASSWORD.

AdresseRôle
http://localhost:3000l’interface
http://localhost:3000/apil’API REST et sa documentation
http://localhost:3000/mcple serveur MCP, pour les agents
localhost:5432PostgreSQL, pour psql et vos outils

Les ports sont publiés sur 127.0.0.1 seulement. Pour servir basedb sur un domaine, voir Domaine et HTTPS.

L’image seule suffit, avec une base PostgreSQL 16 ou plus (rôle propriétaire de la base, extensions pg_trgm et unaccent disponibles) :

Fenêtre de terminal
docker run -d --name basedb -p 3000:3000 -v basedb-files:/data \
-e DATABASE_URL=postgres://basedb:secret@db.example.com:5432/basedb \
-e BASEDB_ENCRYPTION_KEY="$(openssl rand -base64 32)" \
eodia/basedb

Gardez la clé générée : voir l’encadré ci-dessous.

Prérequis : Node 22 ou plus, Docker, et corepack enable.

Fenêtre de terminal
corepack pnpm install
corepack pnpm exec tsc -b packages/naming packages/contracts packages/catalog-schema packages/core apps/api apps/mcp
corepack pnpm start

pnpm start choisit des ports libres, démarre un PostgreSQL 16 jetable, applique le catalogue, amorce un administrateur de développement (admin@basedb.local / developpement-basedb, adresse préremplie à la connexion), puis lance l’API, le serveur MCP et l’interface en mode développement. Ctrl+C arrête tout, conteneur compris.

basedb est un logiciel libre d’Eodia, studio de logiciel IA-natif.