Docker Compose
basedb публікується як один образ, eodia/basedb,
для amd64 і arm64. docker-compose.yml із репозиторію поєднує його з PostgreSQL. Уся
конфігурація задається у файлі .env (див.
Змінні середовища).
Він містить три процеси basedb і обслуговує їх на одному порту, 3000:
| Шлях | Процес |
|---|---|
/api/*, /auth/*, /healthz | REST API, вхід, фонова робота |
/mcp | сервер MCP для агентів |
усе інше — /, /f/…, /v/… | інтерфейс |
Під час запуску API стартує першим: на порожній базі він застосовує каталог і створює першого адміністратора; під час наступних запусків ці кроки нічого не змінюють. Сервер MCP запускається, щойно API відповідає. Якщо один із процесів зупиняється, зупиняється весь контейнер, і політика перезапуску перезапускає його повністю.
Образ працює від імені користувача node на Node 22, оголошує перевірку стану
(/healthz) і том /data для файлів полів «Файл» і «Зображення».
| Тег | Вміст |
|---|---|
latest | остання опублікована версія |
0.7 | остання версія 0.7.x |
0.7.1 | саме ця версія |
Сервіси
Section titled “Сервіси”| Сервіс | Образ | Порт (на 127.0.0.1) | Том |
|---|---|---|---|
db | postgres:16-alpine | 5432 | db-data |
basedb | eodia/basedb | 3000 | files → /data |
proxy (опційно) | caddy:2-alpine | 80, 443 | caddy-data, caddy-config |
Корисні команди
Section titled “Корисні команди”docker compose up -d # завантажити образ і запуститиdocker compose logs -f basedb # стежити за basedb (пароль адміністратора під час 1-го запуску)docker compose ps # стан і справність сервісівdocker compose restart basedb # перезапустити basedbdocker compose down # зупинити (томи лишаються)У клоні репозиторію docker compose up -d --build збирає образ із коду, а не завантажує
його.
За шлюзом, під шляхом
Section titled “За шлюзом, під шляхом”Коли basedb опубліковано під певним шляхом — https://passerelle.example.com/basedb/, а не в
корені домену, — вкажіть цей шлях:
BASEDB_PUBLIC_URL=https://passerelle.example.com/basedb# або, без публічної адреси:BASEDB_BASE_PATH=/basedbТоді все проходить під /basedb: інтерфейс, /basedb/api, /basedb/mcp, посилання спільного
доступу та ті, що в листах. Шлюз може зберегти шлях, передаючи запит, або прибрати його:
basedb приймає обидва варіанти. BASEDB_BASE_PATH=/ примушує корінь.
Образ однаковий для всіх адрес: шлях записується в інтерфейс під час запуску контейнера, і зміна шляху потребує лише перезапуску.
Зміна портів
Section titled “Зміна портів”BASEDB_PORT=3100POSTGRES_PORT=5433Наявна база PostgreSQL
Section titled “Наявна база PostgreSQL”Задайте DATABASE_URL: basedb підключиться до неї замість контейнера db (який однаково
запуститься, але не використовуватиметься, — за бажанням приберіть його у файлі
docker-compose.override.yml). Потрібні PostgreSQL 16 або новіший, роль — власник бази та
доступні розширення pg_trgm і unaccent. Тоді достатньо самого образу — див.
Встановлення.
basedb — вільне програмне забезпечення від Eodia, студії ШІ-орієнтованого програмного забезпечення.