Skip to main content

Quickstart

Run gateway, loggerd, and admin as one process on your machine. The published ports bind to 127.0.0.1 only.

Or try it without installing​

An operator-managed public stand (OpenAI-compatible endpoint, admin console) is available at https://yabanin.ai: point any client at https://yabanin.ai/gw/v1 with a stand key — no local Docker needed. Ask the operator for credentials; the stand runs the same quickstart stack, so the rest of this guide applies unchanged. See Public stand for what the stand is and how it is redeployed.

Requirements​

  • Docker with Compose v2
  • make, openssl, and curl
  • about 4 GB of RAM for the image build and the containers

Five commands​

From the repository root:

bash scripts/quickstart/init-env.sh
make quickstart-up
make quickstart-seed
make quickstart-smoke KEY=yb_... # the key seed printed once
make quickstart-down

init-env.sh writes deploy/quickstart/.env with three random keys and sets mode 600. If that file already exists, the script leaves it alone. make quickstart-up runs the same script, builds the image, and starts Postgres, Redis, migrations, the all-in-one yabanin dev process, and the optional mock provider (Compose profile mock).

make quickstart-seed runs the canonical yabanin seed one-shot service: it creates the organization, default team, budget, model, starting credits, the API key, and the root admin in one step, then prints an API key once and an admin password once. Store both. The command does not write them to a file. Running it again is a safe no-op: the seed key is reused and the plaintext is not shown again.

Admin​

Open http://127.0.0.1:8086 and sign in with QS_ADMIN_EMAIL (admin@localhost unless you changed it) and the password from seed.

A real model​

Edit deploy/quickstart/.env before seed:

  • QS_MODEL — registry name
  • QS_UPSTREAM_URL — OpenAI-compatible base URL reachable from the yabanin container

Seed registers the model with the openai-compat provider. That covers OpenAI-compatible servers directly, including llama.cpp's /v1/chat/completions endpoint. For a provider-specific adapter (llamacpp, vllm, ...), register the model in the admin console after seed (Models page).

For a local llama.cpp server, start the profile from the main compose file:

docker compose -f deploy/docker-compose.yml --profile llamacpp up -d

Point QS_UPSTREAM_URL at that server.

Alternatively, skip editing .env and add the provider key per org in the admin console after seed — see BYOK (Settings → Provider keys).

To skip the mock provider, run Compose without --profile mock and set the upstream URL before seed. make quickstart-up includes the profile so the smoke chat call has somewhere to go.

Stop​

make quickstart-down stops the stack and keeps the database volume. Add down -v yourself when you want a clean database.

Limits​

  • The Postgres user and password inside this compose file are fixed dev values (yabanin).
  • The generated session, HMAC, and encryption keys are for this local file only.
  • Nothing listens on 0.0.0.0.
  • This stack is not a production deployment.