Dolittle is a decentralized, distributed, event-driven microservice platform built to harness the power of events.
The Runtime is the backend of our system and manages connections from the SDKs and Runtimes to the Event Store. It's called the Runtime as it's what runs and powers the SDK's to do their job.
- Try our tutorial
- Check out our documentation
There are 2 different types of images. The Production
images contain the Runtime. The Development
images have the Runtime and a MongoDB instance running on port 27017
for easier development. We also have arm64 variants of both images.
Type | Version |
---|---|
Production | |
Development |
Build:
From project root:
dotnet build
Run:
From project root:
cd Source/Server
dotnet run
Configuration files are in Source/Server/.dolittle/
Tests:
From project root:
dotnet test
You build all images from the project root:
Production:
docker build -t dolittle/runtime -f ./Docker/Production/Dockerfile .
ARM64 Production:
docker build -t dolittle/runtime:arm64 -f ./Docker/ARM64Production/Dockerfile .
Development:
docker build -t dolittle/runtime:development -f ./Docker/Development/Dockerfile .
ARM64 Development:
docker build -t dolittle/runtime:arm64-development -f ./Docker/ARM64Development/Dockerfile .
You can open the .sln
file in the root of the repository and just build directly.
We have readymade tasks for VSCode. Press F1
and type Run Tasks
and select Tasks: Run Tasks
to see the tasks.
They are folder sensitive and will look for the nearest .csproj
file based on the file you have open.
If it doesn't find it, it will pick the .sln
file instead.
Go to our documentation site and learn more about the project and how to get started. Samples can be found in dolittle-samples. Our entropy projects are in dolittle-entropy.
Issues and contributions are always welcome!
To learn how to contribute, please read our contributing guide.