doze doze/registry
F

FerretDB

official ● signed
doze/ferret
runs FerretDB 2 · macOS & Linux

A MongoDB-wire database you connect to with any Mongo client. Under the hood it is FerretDB v2 fronting a private PostgreSQL with Microsoft's DocumentDB extension — no MongoDB server, no license worries.

Usage

Drop it in doze.hcl and run doze up.

doze.hcl
ferret "shop" {
  version = "2.7"

  database "catalog" {
    collection "products" { seed = "./seed/products.json" }
    collection "orders" {}
  }
}

Versions you can run

The version = you write is the engine's own version — the only version that's yours. Declare a series and doze pins its newest published build, or declare an exact build; either way it's fetched, verified, and pinned in doze.lock, so it never moves on its own.

version = pins (today) exact builds
2 2.7.0 1
every exact build, per series
2 — 2.7.0

Configuration

Arguments and nested blocks the engine accepts — generated from the module itself, so it can't drift.

Name Type Default Description
version REQ string FerretDB v2.x gateway version
database block a Mongo database to ensure (repeatable; label = name)
collection block a collection within a database (repeatable; label = name)
seed string path to a JSON array seeded into an empty collection
index block an index on a collection (keys = {field=1|-1}, unique)
settings map(string) extra FERRETDB_* gateway settings
auth bool false enable auth + user convergence (scaffold; needs validation)
user block a Mongo user when auth is on (name, password, database, roles)
Under the hood — module releases you never write these; doze picks and pins automatically

The plugin releases that provide this engine. doze selects the newest one compatible with your doze and your declared versions, pins it in doze.lock, and the index is cumulative — older releases stay resolvable for pinned lockfiles. modules { ferret { version = "…" } } pins one exactly (the escape hatch for bisecting a regression).

release protocol engine support platforms
0.2.2 stable 1 2 3 platforms
0.2.1 1 2 3 platforms

raw signed data: index.yaml ↗ · meta.yaml ↗