Welcome! This repository provides a ready-to-run setup of ODE: Synkronus, including a Postgres database, so you can try it out quickly or use it as a starting point for your own deployments.
- Fully containerized Synkronus server
- Includes Postgres database
- Supports local usage and GitHub Codespaces
- Easy environment variable configuration
- Clone this repo:
git clone https://github.com/OpenDataEnsemble/synkronus-quickstart.git
cd synkronus-quickstart- Adjust env variables the
docker-compose.ymlfile.
- In the postgres service:
- POSTGRES_PASSWORD
- In the synkronus service:
- DB_CONNECTION (update to match POSTGRES_PASSWORD)
- JWT_SECRET (generate a new one with: 'openssl rand -base64 32')
- ADMIN_USERNAME
- ADMIN_PASSWORD
Optionally you can choose to map the volumes to specific mountpoints on the host.
-
Prepare a database for synkonus
Start only the
dbservice from Docker Compose:docker compose up db
This will start the database container and keep it running in the foreground.
In a separate terminal, make the
create_sync_db.shscript executable:chmod +x ./create_sync_db.sh
Then run the script to create the Synkronus database and user:
./create_sync_db.sh
The script will connect to the running
dbcontainer and set up the required database and user account. -
Start the services:
docker compose up -d- Verify the server is running:
curl http://localhost:8080/health
# Should return "OK"- Click “Open in Codespaces” on this repository.
- Codespaces will automatically start Synkronus + Postgres.
- Check the Ports tab for the forwarded port to access the API.
- Test the server:
curl <forwarded-url>/healthNotes:
- No UI yet — the API is used with 'Formulus' or 'synkronus-cli'.
- Perfect for experimenting or as a base for production setups.
We welcome feedback! Feel free to open issues or pull requests. If you’re trying this out for the first time, check the Codespaces instructions for the quickest setup.
Enjoy exploring Synkronus!