MongoDB and Git had a baby, and it's named Dumbo.
1.7K
DumboDB is a document database that speaks the MongoDB 8.0 wire protocol and supports Git-style version control (commit, branch, merge, diff) over your collections. It's built on the Dolt storage engine.
Connect to DumboDB with any MongoDB driver or mongosh:
mongosh mongodb://localhost:27017
DumboDB is pre-1.0 software and not yet ready for production use.
As in MongoDB, access control is off unless you start the server with
--auth. Without it, every connection has full access, so run unauthenticated instances only in trusted environments and do not expose them to untrusted networks.
Running this image with no arguments starts the DumboDB server bound to
0.0.0.0:27017, storing data in /var/lib/dumbodb:
docker run -p 27017:27017 dolthub/dumbodb:latest
To persist data on the host, mount a volume to /var/lib/dumbodb:
docker run -p 27017:27017 \
-v /path/on/host:/var/lib/dumbodb \
dolthub/dumbodb:latest
To override flags (e.g. enable auto-commit, change log level), pass them after the image name:
docker run -p 27017:27017 dolthub/dumbodb:latest \
--data-dir /var/lib/dumbodb \
--addr 0.0.0.0:27017 \
--auto-commit \
--log-level debug
Run --help to see all supported flags:
docker run --rm dolthub/dumbodb:latest --help
The Dockerfile supports three modes via the DUMBODB_VERSION build arg:
docker build -f docker/Dockerfile --build-arg DUMBODB_VERSION=0.1.0 \
-t dumbodb:0.1.0 .
docker build -f docker/Dockerfile --build-arg DUMBODB_VERSION=latest \
-t dumbodb:latest .
The build context must contain a dumbodb/ directory with the source tree. From
a parent directory containing dumbodb/:
docker build -f dumbodb/docker/Dockerfile --build-arg DUMBODB_VERSION=source \
-t dumbodb:source .
Warning When building from source, no other directories in the build context may have names starting with
dumbodb— the Dockerfile uses a wildcard (dumbodb*/) to conditionally copy the source tree, and additional matches will break the build.
DumboDB stores all data under the directory passed to --data-dir. In this
image that's /var/lib/dumbodb, declared as a VOLUME. Mount a host directory
or a named volume to keep data across container restarts:
docker volume create dumbodb-data
docker run -p 27017:27017 -v dumbodb-data:/var/lib/dumbodb dolthub/dumbodb:latest
DumboDB exposes Git-style operations as MongoDB runCommand calls
(dumboCommit, dumboBranch, dumboMerge, dumboLog, etc.). See the
Command Reference for the
full list and the project README
for examples.
Content type
Image
Digest
sha256:9f051a78a…
Size
150.6 MB
Last updated
13 days ago
docker pull dolthub/dumbodb