🗄️

Database in a Box

(DIB)

Five database engines, six web interfaces, monitoring, backup and restore, migrations, and realistic sample data in one development platform.

Want this deployed and maintained for you? Review the engagement options

Developers need somewhere to learn PostgreSQL, compare Redis and relational models, test migrations, inspect queries, and rehearse backups. DIB provides that environment without turning every experiment into a ticket for the database team.

⚡ Quick start

git clone https://github.com/matijazezelj/dib.git
cd dib
make install
make health
make open

make install creates the local configuration, starts the selected databases, web interfaces, exporters, Prometheus, and Grafana. Use make demo to seed representative data.

DIB ships development credentials for local use. Change them before any non-local exposure and read the repository’s security guidance. This is a database development platform, not a shortcut around production database engineering.


What you get

Capability Included
Database engines PostgreSQL 17, MariaDB 11, Redis 7, ClickHouse 24, and MongoDB-compatible FerretDB
Web interfaces CloudBeaver, pgAdmin, phpMyAdmin, RedisInsight, Mongo Express, and ClickHouse Play
Monitoring Prometheus, Grafana, and per-database exporters with provisioned dashboards
Data operations Backup and restore helpers, schema migrations, sample-data seeding, and health checks
Developer access Generated connection strings and shell helpers for common clients and languages
Deployment Install the full environment or select individual database stacks

Use one engine or the whole lab

make install-postgres
make install-mariadb
make install-redis
make install-clickhouse
make install-ferretdb

Each engine has corresponding start, stop, log, shell, backup, and health targets. The full environment shares a Docker network so applications and monitoring components can resolve each service consistently.


Data workflows

make demo
make connection-strings
make backup
make backup-postgres
make restore DB=postgres FILE=backups/example.sql
make migrate ACTION=up DB=postgres

DIB is deliberately useful beyond “the containers started.” The operational helpers make it suitable for workshops, integration testing, migration rehearsals, and learning how different database systems behave under the same monitoring surface.


Who it is for

  • Developers who need realistic local database environments
  • Teams comparing data stores before committing to one
  • Workshops and internal enablement
  • Integration and migration testing
  • Future DBAs rehearsing backup, restore, monitoring, and failure scenarios

Who it is not for

  • A managed production database service
  • A high-availability database architecture
  • A substitute for backup retention, replication design, capacity planning, or access controls

Give the team a database lab they can understand.

View DIB on GitHub

🚀 Need Help Getting Started?

Self-hosting is free and always will be. But if you'd rather have it deployed, configured, and maintained for you — I can help.