Skip to content

CLI Reference

The elara binary ships three commands. There is no separate client binary — the same executable serves the UI, the ConnectRPC API, and the etcd-compatible gRPC API.

elara

Runs the server. Equivalent to elara serve.

Running bare is the supported default, not a shorthand: the container image's ENTRYPOINT is ["/bin/elara"] and the Helm chart passes no arguments, so the no-subcommand form is what every packaged deployment actually invokes.

elara serve

The same thing, named explicitly. Use it when a process supervisor or container spec reads better with the verb spelled out.

All configuration comes from environment variables or a config file — there are no server flags. See Configuration.

elara version

Prints build and platform information:

$ elara version
elara v0.5.0
  commit:     3f2a1c9e4b7d8a6f5c2e1b0d9a8f7e6c5d4b3a29
  built:      2026-09-23T11:04:17Z
  go version: go1.26.3
  platform:   linux/amd64

version, commit, and built are stamped at link time. A binary built without those flags — a plain go build, or go run ./cmd/service during development — reports dev / none / unknown instead. Release archives and the published container images always carry real values, so this is the fastest way to confirm which build a running instance came from.

The same version is used as the default for SERVICE_VERSION in logs and metrics when you do not set it explicitly.

Installing

See Install for the three supported routes: container image, release archive, and Helm.

go install is not supported

go install github.com/sergeyslonimsky/elara/cmd/service@latest produces a binary that fails to build. web/embed.go embeds the compiled frontend with //go:embed all:dist, and web/dist is a build artifact that is not committed to the repository — so the embed directive cannot be satisfied from module source alone. Building from a checkout requires cd web && npm run build first.

Use a release archive or the container image instead.