Eclipse Ditto is the open-source project of Eclipse IoT that provides a ready-to-use functionality to manage the state of Digital Twins. It provides access to them and mediates between the physical world and this digital representation.
Find the documentation on the project site: https://eclipse.org/ditto/
In order to start up Ditto, you'll need
- a running Docker daemon (at least version 17.06 CE)
- Docker Compose installed (at least version 1.14)
In order to start the latest built Docker images from Docker Hub, simply execute:
cd docker/
docker-compose up -d
Check the logs after starting up:
docker-compose logs -f
Open following URL to get started: http://localhost:8080
Or have a look at the "Hello World"
In order to build Ditto, you'll need
- JDK 8 >= 1.8.0_92 (due to a bug in older versions of the JDK you'll get a compile error)
- Apache Maven 3.x installed
In order to first build Ditto and then start the built Docker images
# if you have the docker daemon running with remote access enabled (e.g. in a Vagrant box or on localhost):
mvn clean install -Pdocker-build-image -Ddocker.daemon.hostname=<ip/host of your docker daemon>
# if you have the docker daemon running on your machine and you are running on Unix, you can also connect against the docker socket:
mvn clean install -Pdocker-build-image -Ddocker.daemon.url=unix:///var/run/docker.sock
cd docker/
# the "dev.env" file contains the SNAPSHOT number of Ditto, copy it to ".env" so that docker compose uses it:
cp dev.env .env
docker-compose up -d
Check the logs after starting up:
docker-compose logs -f
You have now running:
- a MongoDB as backing datastore of Ditto (not part of Ditto but started via Docker)
- Ditto microservices:
- Policies
- Things
- Thing-Search
- Gateway
- an nginx acting as a reverse proxy performing a simple "basic authentication" listening on port
8080
- including some static HTTP + API documentation on http://localhost:8080