Sari la conținut

Variabile de mediu

Toate se pun în fișierul .env, lângă docker-compose.yml, pe care îl citește docker compose (șablonul complet și comentat este .env.example). Cu docker run, transmiteți-le cu -e. O valoare goală înseamnă „nedefinit”.

VariabilăRol
POSTGRES_PASSWORDparola containerului PostgreSQL
BASEDB_ENCRYPTION_KEYcheia instanței: semnează sesiunile, criptează secretele. openssl rand -base64 32, o singură dată
VariabilăImplicitRol
POSTGRES_USERbasedbrolul PostgreSQL
POSTGRES_DBbasedbbaza de date PostgreSQL
POSTGRES_PORT5432port publicat pe 127.0.0.1
DATABASE_URLcontainerul dbo bază de date PostgreSQL 16+ proprie
VariabilăImplicitRol
BASEDB_MIGRATE1aplică catalogul pe o bază de date goală
BASEDB_BOOTSTRAP1pregătește primul administrator
BASEDB_TENANTt4z56fqreferința spațiului de lucru, în URL-urile API-ului
BASEDB_ADMIN_EMAIL—adresa primului administrator, creat la pornire; goală, prima persoană care deschide interfața îl creează
BASEDB_ADMIN_PASSWORDgenerată, afișată o singură datăîmpreună cu BASEDB_ADMIN_EMAIL, parola acestuia; definită, este reaplicată administratorului la fiecare pornire: de eliminat după conectare
VariabilăImplicitRol
BASEDB_OIDC_PROVIDERS—furnizorii propuși, separați prin virgule: google,microsoft
BASEDB_OIDC_<NOM>_CLIENT_ID, _CLIENT_SECRET—aplicația înregistrată la furnizor
BASEDB_OIDC_<NOM>_ISSUERcel al google, gitlabemitentul OpenID Connect
BASEDB_OIDC_<NOM>_LABEL, _SCOPESîn funcție de furnizornumele butonului, domeniile de acces cerute
BASEDB_OIDC_<NOM>_SIGNUP—off: o primă conectare nu creează cont

Consultați Conturi și conectare.

VariabilăImplicitRol
BASEDB_PORT3000port publicat pe 127.0.0.1: interfața, /api și /mcp
BASEDB_VERSIONlatesteticheta imaginii eodia/basedb
BASEDB_PUBLIC_URL—adresa publică a basedb, pentru redirecționarea OIDC
BASEDB_BASE_PATHcalea din BASEDB_PUBLIC_URLcalea sub care este servit basedb în spatele unei porți de acces, /basedb pentru https://passerelle.example.com/basedb/; consultați Docker Compose
BASEDB_DOMAIN—domeniul servit prin HTTPS de proxy-ul Caddy
BASEDB_ORIGINS—alte site-uri ale căror pagini apelează API-ul din browser, separate prin virgule; inutil pentru interfața basedb, servită la aceeași adresă
BASEDB_API, BASEDB_MCP/, /mcpAPI-ul și MCP-ul văzute din browser; de setat doar pentru mediul de dezvoltare (pnpm start)
VariabilăImplicitRol
BASEDB_FILES_MAX_MB25dimensiunea maximă a unui fișier
BASEDB_S3_BUCKET—activează stocarea S3
BASEDB_S3_ENDPOINT—punctul de acces S3
BASEDB_S3_REGIONus-east-1regiunea
BASEDB_S3_ACCESS_KEY_ID, BASEDB_S3_SECRET_ACCESS_KEY—datele de autentificare
BASEDB_S3_FORCE_PATH_STYLE10 pentru adresarea după gazdă

Fără server de trimitere, basedb nu trimite niciun e-mail. Cu el sunt trimise notificările rămase zece minute necitite (fiecare alege care în Setări › Notificări), e-mailurile pasului Trimiteți un e-mail al automatizărilor, și link-ul unei parole uitate. Link-urile trimit către BASEDB_PUBLIC_URL; fără ea, un e-mail nu are niciunul.

VariabilăImplicitRol
BASEDB_SMTP_HOST—serverul SMTP: cel al mesageriei dumneavoastră sau al unui serviciu de trimitere
BASEDB_SMTP_PORT587465 pentru o conexiune criptată de la început
BASEDB_SMTP_SECUREstarttls (tls pe portul 465)none doar pentru un releu pe același calculator: altfel parola ar trece necriptată
BASEDB_SMTP_USER, BASEDB_SMTP_PASSWORD—identificatorul contului de trimitere, dacă cere unul
BASEDB_MAIL_FROM—obligatorie cu BASEDB_SMTP_HOST: expeditorul, basedb <no-reply@exemple.fr>

La pornire, jurnalul spune cum stau lucrurile: Courriels : SMTP smtp.exemple.fr:587 (starttls), expéditeur no-reply@exemple.fr. Un e-mail refuzat de server este retrimis 1, 5, 30, 120, apoi 360 de minute mai târziu.

Vizualizarea Hartă plasează o adresă cu ajutorul unui serviciu de geocodare: cel al OpenStreetMap (Nominatim) în mod implicit, interogat o dată pentru fiecare adresă, cel mult o cerere pe secundă, fiecare răspuns fiind reținut. Fondul de hartă este format din tile-uri pe care browserul fiecărui cititor le încarcă direct.

VariabilăImplicitRol
BASEDB_GEOCODER_URLhttps://nominatim.openstreetmap.orgun alt serviciu care vorbește același protocol (propriul dumneavoastră Nominatim); off: niciunul, adresele nu ies din instanță, iar numai latitudinea și longitudinea plasează rândurile
BASEDB_MAP_TILEStile-urile OpenStreetMapun alt server de tile-uri, model https://…/{z}/{x}/{y}.png
BASEDB_MAP_ATTRIBUTION© OpenStreetMapmențiunea cerută de acest server, în dreapta jos a hărții

La pornire, jurnalul spune ce serviciu este folosit: Géocodage : https://nominatim.openstreetmap.org.

VariabilăImplicitRol
BASEDB_PDF_FONTSfonturile Noto ale imaginiiun dosar propriu, montat în container, care conține NotoSans-Regular.ttf, -Bold, -Italic, -BoldItalic, și pentru chineză, japoneză și coreeană NotoSansCJK-Regular.ttc și -Bold.ttc
VariabilăImplicitRol
BASEDB_TEMPLATES_URLcatalogul site-ului publicde unde citește instanța șabloanele din galeria ei; off pentru a nu citi niciunul (șabloanele integrate rămân) — consultați Șabloane
VariabilăImplicitRol
BASEDB_AI_PROVIDER—openai, anthropic, mistral sau openai_compatible (Azure, o poartă de acces, un model local)
BASEDB_AI_MODEL—modelul
BASEDB_AI_API_KEY—cheia (altfel OPENAI_API_KEY, ANTHROPIC_API_KEY, MISTRAL_API_KEY); opțională pentru openai_compatible
BASEDB_AI_BASE_URLadresa furnizoruluitot ce precedă /chat/completions (/messages pentru anthropic), parametrii incluși; obligatorie pentru openai_compatible — consultați Inteligență artificială
BASEDB_AI_HEADERS—antete adăugate la fiecare apel, sub forma unui obiect JSON: {"api-key":"…"}
BASEDB_AI_PROVIDER_SSL_VERIFYtruefalse: certificatul TLS al furnizorului nu este verificat — o poartă de acces internă cu certificat autosemnat; consultați Inteligență artificială
BASEDB_AI_QUOTA120apeluri interactive pe oră și pe spațiu de lucru
BASEDB_AI_FIELD_QUOTA300calcule de câmpuri AI pe oră și pe spațiu de lucru
BASEDB_AI_WORKER10: fără calcul în fundal în acest proces
VariabilăImplicitRol
BASEDB_WEBHOOK_ALLOW—serverele dumneavoastră interne, separate prin virgule: un nume (chat.intra.example.com), un domeniu și subdomeniile lui (*.intra.example.com), o adresă sau o plajă (10.12.0.0/16)

Webhook-urile, cererile HTTP ale automatizărilor și tabelele sincronizate pleacă doar către adrese publice în HTTPS. O destinație din listă este acceptată în plus, indiferent de adresa, portul și schema ei — HTTP inclusiv. O intrare ilizibilă blochează pornirea. Consultați Webhook-uri.

O instanță deschisă tuturor, precum demo.basedb.eodia.com: ecranul de conectare precompletează un cont partajat, vizitatorul citește tot și modifică ce există, dar nu creează și nu șterge nimic — bază, tabel, rând, fișier, comentariu, cont, token, link —, iar AI-ul răspunde că nu face parte din demo. Consola SQL doar citește acolo. Repunerea bazei în starea inițială în fiecare noapte rămâne în sarcina dumneavoastră.

VariabilăImplicitRol
BASEDB_DEMO—1: instanța devine o demo publică
BASEDB_DEMO_ACCOUNTS—un cont pe limbă, separate prin virgule: fr=demo@demo.com,en=demo-en@demo.com; ecranul de conectare precompletează contul limbii lui, altfel engleza, altfel primul, și le propune pe celelalte. Creați aceste conturi, fiecare cu proiectul lui, înainte de a activa demo: aceasta refuză creările tuturor, administratorul inclusiv
BASEDB_DEMO_PASSWORD—împreună cu BASEDB_DEMO_ACCOUNTS, parola lor, aceeași pentru toate, publicată împreună cu ele

Fără BASEDB_DEMO_ACCOUNTS, contul partajat este administratorul numit de BASEDB_ADMIN_EMAIL și BASEDB_ADMIN_PASSWORD. O adresă a demo se conectează cu parola publicată, indiferent ce se tastează: încercările greșite nu o blochează pentru toată lumea.

VariabilăRol
BASEDB_DEV_MAIL=1afișează e-mailurile în jurnale în loc să le trimită
BASEDB_WEBHOOK_DEV=1permite webhook-uri către HTTP și către adrese locale

basedb este software liber dezvoltat de Eodia, un studio de software AI-nativ.