Docs/Get startedv0.0.1-preview

Getting started

Three ways to run TulaDB 0.0.1-preview — a Docker or Podman stack on your laptop, one node from the binary installer, or a three-node mTLS cluster with the dashboard, metrics and the Iceberg lake — and which downloads each one needs.

On this page
  1. A. Developer quick setup (Docker or Podman)
  2. B. One node, natively
  3. C. A production-shaped cluster
  4. Verify before you run
  5. Ports at a glance

TulaDB 0.0.1-preview is out: every component is a signed download on Downloads, served from downloads.tuladb.com. Pick the path that matches what you want to learn. All three use the same release, so anything you build against the first carries over to the others.

You get You need Start here
A. Developer quick setup a three-node cluster (or one node), the dashboard, the REST API, Prometheus and Grafana, plus a Postman collection that walks the API one machine with Docker or Podman, 2.5 GB of disk, 2–3 GB of container memory Quick setup (Docker or Podman)
B. One node, natively tuladbd as a systemd service (or under ~/.tuladb on a Mac), tulactl, your first transfer and an idempotent retry one supported Linux server, or a Mac on Apple silicon Quickstart, then Install TulaDB
C. A production-shaped cluster three voters with mutual TLS on every hop, the Prometheus exporter and Grafana dashboards, the Iceberg exporter writing to a lake, and the dashboard three Linux servers plus an operations host Integrated cluster

Every path is for evaluation: 0.0.1-preview is a developer preview, covered by the evaluation grant of the TulaDB Source-Available License, and not certified for production. The release notes list what is in it and what is known not to work yet.

A. Developer quick setup (Docker or Podman)

The shortest path from nothing to the whole stack. The eval download carries the TulaDB container images (x86_64 and arm64) as docker load tarballs built from the published server installer, a Compose bundle with eval.sh, and a Postman collection.

curl -fsSLO https://downloads.tuladb.com/eval/0.0.1-preview/tuladb-eval-compose-0.0.1-preview.tar.gz
curl -fsSLO https://downloads.tuladb.com/eval/0.0.1-preview/SHA256SUMS
sha256sum -c --ignore-missing SHA256SUMS        # macOS: shasum -a 256 -c --ignore-missing SHA256SUMS
tar -xzf tuladb-eval-compose-0.0.1-preview.tar.gz && cd tuladb-eval-0.0.1-preview
./eval.sh doctor        # engine, compose, ports, disk, memory, architecture
./eval.sh up            # or: ./eval.sh up --single
./eval.sh postman       # writes a Postman environment with this stack's keys

Then import the collection and the environment into Postman and run its folders in order. The guide covers verifying the signature too, the URLs and credentials, troubleshooting (rootless Podman, SELinux, Apple silicon) and ./eval.sh purge.

B. One node, natively

tuladbd installs only through tuladb-installer, one static binary per platform that carries the whole server release: tuladbd, tulactl and the Prometheus exporter. Download it with its SHA256SUMS, SHA256SUMS.cosign.bundle and trusted_root.json, verify both, then:

chmod +x tuladb-installer-0.0.1-preview-linux-x86_64
sudo ./tuladb-installer-0.0.1-preview-linux-x86_64 install --single
sudo ./tuladb-installer-0.0.1-preview-linux-x86_64 status

On a Mac, the same command with the darwin-arm64 installer and without sudo installs under ~/.tuladb, with no service; it prints the command that starts the node. The Quickstart continues from here: a ledger, two accounts, a transfer and a retry that does not post twice. To write code against it, add an SDK from the sdk download: Python, Java, Go, Rust or C.

C. A production-shaped cluster

Integrated cluster builds the full deployment step by step, on your own machines and with your own certificate authority:

Machine What runs there Download
three nodes tuladbd (a voter each), tulactl, a Prometheus exporter beside each node core (or the exporter alone: prometheus-exporter)
an operations host Prometheus and Grafana with the TulaDB dashboards grafana-dashboards
an operations host the Iceberg exporter, writing committed history to a lake exporter
an operations host the operator dashboard, behind your HTTPS proxy dashboard
your applications an SDK sdk

Each download is signed by its own release workflow and verified the same way; Install the components has every one’s install, configuration, upgrade and removal, including on hosts with no network access. Before anything depends on it, read Path to production.

Verify before you run

Every download directory holds SHA256SUMS, a keyless Sigstore signature over it (SHA256SUMS.cosign.bundle) made by that product’s release workflow at the release tag, and trusted_root.json to check the signature with no network. Downloads prints the exact cosign verify-blob --offline command for each product. Don’t run a file if either the signature or its hash fails.

Ports at a glance

Port What Who connects
7700 client (writes, admin), mTLS on a cluster SDKs, tulactl, the dashboard
7800 query (reads, export stream), mTLS on a cluster SDKs, the dashboard, the Iceberg exporter
8700, 9700 fabric and heartbeat between nodes other nodes only
9145 Prometheus exporter, plain HTTP your Prometheus only
9146 Iceberg exporter metrics and health, on 127.0.0.1 your Prometheus

Questions, or a pilot on your own replayed traffic: [email protected].