Private models/servers


Is it possible to run the composedb/ceramic nodes in a private way, without needing to join the global network? Or do all nodes have to join all others, regardless of whether or not they want to share models?

Ceramic nodes reach out to bootstrap nodes every time they come up, which connects them to the larger network. They would also anchor to Ethereum, which would also be visible publicly.

Theoretically, you could run an isolated network but doing it that way you’d lose a lot of the advantages of using Ceramic.

What type of use case are you looking at? Maybe we can figure out a different way to achieve what you need.


Just the ability to run a decentralised database of a specific configuration, but limiting who can contribute (so like the idea of trusted nodes and untrusted nodes)

Hello @darrendeveler !

In terms of contributions, you might already know that access control is already built into the ability to mutate a stream/model instance (based on the controlling Ceramic Account). And while any nodes in the network may choose to start indexing on a model and allowing users to write their own instances, one option you could choose is just reading from model instances for which you know the trusted Ceramic Account/Eth address. This would allow you to retain many of the advantages of using Ceramic, while ensuring you’re only using data created by accounts you care about.

There is also the option of encrypting data on ComposeDB based on known accounts/Eth addresses if your concern is also read access.