F
FerretDB
official ● signeddoze/ferret
module v0.2.0 · plugin protocol 1
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" {}
}
} Engine versions
Choose one with version =. doze fetches & verifies it, then pins it in doze.lock.
2
Configuration
Arguments and nested blocks the engine accepts.
| 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) |