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, andcurl- 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 nameQS_UPSTREAM_URL— OpenAI-compatible base URL reachable from theyabanincontainer
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.