Salta ai contenuti

Docker Compose

basedb è pubblicato come un’unica immagine, eodia/basedb, per amd64 e arm64. Il docker-compose.yml del repository la assembla con PostgreSQL. Tutta la configurazione passa per un file .env (vedi Variabili d’ambiente).

Contiene i tre processi di basedb e li serve su un’unica porta, la 3000:

PercorsoProcesso
/api/*, /auth/*, /healthzl’API REST, l’accesso, le elaborazioni in background
/mcpil server MCP, per gli agenti
tutto il resto — /, /f/…, /v/…l’interfaccia

All’avvio, l’API parte per prima: su un database vuoto, applica il catalogo e crea il primo amministratore; agli avvii successivi, entrambe le operazioni non hanno effetto. Il server MCP si avvia non appena l’API risponde. Se uno dei processi si arresta, l’intero container si arresta, e la politica di riavvio lo riavvia per intero.

L’immagine gira con l’utente node, su Node 22, dichiara un controllo di integrità (/healthz) e un volume, /data, per i file dei campi File e Immagine.

TagContenuto
latestl’ultima versione pubblicata
0.7l’ultima versione 0.7.x
0.7.1esattamente questa versione
ServizioImmaginePorta (su 127.0.0.1)Volume
dbpostgres:16-alpine5432db-data
basedbeodia/basedb3000files → /data
proxy (opzionale)caddy:2-alpine80, 443caddy-data, caddy-config
Fenêtre de terminal
docker compose up -d # scarica l’immagine e avvia
docker compose logs -f basedb # segui basedb (password admin al 1° avvio)
docker compose ps # stato e integrità dei servizi
docker compose restart basedb # riavvia basedb
docker compose down # ferma (i volumi restano)

Da un clone del repository, docker compose up -d --build costruisce l’immagine dal codice invece di scaricarla.

Quando basedb è pubblicato sotto un percorso — https://passerelle.example.com/basedb/ invece che alla radice di un dominio —, indica questo percorso:

Fenêtre de terminal
BASEDB_PUBLIC_URL=https://passerelle.example.com/basedb
# oppure, senza indirizzo pubblico:
BASEDB_BASE_PATH=/basedb

Tutto passa allora sotto /basedb: l’interfaccia, /basedb/api, /basedb/mcp, i link di condivisione e quelli delle email. Il gateway può mantenere il percorso trasmettendo la richiesta, oppure rimuoverlo: basedb accetta entrambi. BASEDB_BASE_PATH=/ forza la radice.

L’immagine è la stessa per tutti gli indirizzi: il percorso viene scritto nell’interfaccia all’avvio del container, e cambiare percorso richiede solo un riavvio.

Fenêtre de terminal
BASEDB_PORT=3100
POSTGRES_PORT=5433

Definisci DATABASE_URL: basedb vi si collega invece che al container db (che si avvia comunque, inutilizzato — rimuovilo tramite un file docker-compose.override.yml se preferisci). Servono PostgreSQL 16 o superiore, un ruolo proprietario del database, e le estensioni pg_trgm e unaccent disponibili. Basta allora la sola immagine — vedi Installazione.

basedb è un software libero di Eodia, studio di software AI-native.