Quickstart
Stand up the full Eddytor stack on one host with a single command.
The fastest way to a running Eddytor is the installer. It pulls the prebuilt public images (seconds, not a build), scaffolds an install directory, starts the stack, and walks you through creating the first admin.
Good to know
Prerequisites
- A host with Docker and the Docker Compose plugin.
- Outbound network access to pull images from
ghcr.io/nordalf.
Install in one command
curl -fsSL https://get.eddytor.com | shThis scaffolds ~/eddytor/ and starts the stack:
~/eddytor/
├── docker-compose.yml # replaced on upgrade - don't edit
├── config.toml # non-secret settings (public URL, CORS, …) - edit this
├── HOSTING.md # the self-hosting guide
└── .env # secrets + bundled-stack wiring (generated) - back upThe installer generates the required secrets into .env (including the bundled
object-store credentials), starts Docker Compose, and prompts you to create the
first admin and to optionally include the Web UI.
Heads up
.env. It holds EDDYTOR_ENCRYPTION_KEY -
lose it and every stored secret becomes unrecoverable. That directory is yours:
back up .env and version the rest.Verify it's up
Wait for the server to report healthy:
docker compose ps # eddytor-server should show (healthy)http://localhost:8080 is the REST + gRPC API, not a web page - Eddytor is
API-first. If you enabled the Web UI, it serves at http://localhost:3000.
Then: admin, storage, first table
- Bootstrap the first admin & sign in - create the admin and authenticate the CLI.
- Connect storage - register the bucket Eddytor writes tables to (the installer creates a bundled one for evaluation).
- Create your first table - and you're managing data.
Driving it yourself
Prefer not to pipe a script to a shell? The installer's steps - download
docker-compose.yml + config.toml, generate .env secrets, write the bundled
object-store config, docker compose up -d - are all documented in
Docker Compose (single host).
Upgrades
Bump EDDYTOR_VERSION in .env, then:
docker compose pull && docker compose up -dMigrations are forward-only - snapshot Postgres first.