Evolu Relay

Evolu Relay provides sync and backup for Evolu clients. While it's technically possible to sync and backup Evolu devices among themselves (P2P), it's not practical because devices are often offline and geographically close. Backups should be stored in locations that are geographically distant from each other to ensure protection against localized disasters.

Evolu Relay is a simple message buffer and storage generic (the same) for all Evolu apps. Only UserId, NodeId, and messages timestamps are visible. Everything else is encrypted.

Evolu Relay is open-sourced and anyone can easily run their own. The core logic is a SQL database and web framework agnostic, so it's highly portable.


Running the server

Currently the easiest solution to run Evolu server would be to use the docker image:

  1. Pull the docker image.
docker pull evoluhq/evolu:main
  1. Create an empty sqlite file for mounting the database.
touch db.sqlite
  1. startup the evolu server on port 4000 and mount database file on ./db.sqlite that we created previously.
docker run --name evolu -p 4000:4000 -v $(pwd)/db.sqlite:/home/node/app/apps/server/db.sqlite -d evoluhq/evolu:main

Was this page helpful?