Step 2 — Sign up
Create your first OrcheStack account. The first person to sign up becomes Admin automatically — no bootstrap shell scripts, no command-line user creation.
First user is Admin
When OrcheStack starts for the first time, the platform.users table is empty. The signup page detects this and automatically promotes whoever registers first to Admin. This mirrors how Metabase, Airflow, Grafana, and every self-hosted admin tool handles initial installation.
This means you don't need to run any CREATE USER SQL before using OrcheStack. The web UI bootstraps itself.
The signup form
Open the browser and navigate to http://localhost/signup (or click Get started on the landing page). Provide:
- Full name — appears in the admin dashboard and audit logs.
- Email — used for password resets and notifications. Must be unique.
- Username — 3–32 characters; letters, numbers, dot, dash, underscore. Used for login.
- Role — locked to Admin for the first user. Future users pick Admin, Engineer, Analyst, or a custom role.
- Password — minimum 12 characters. Stored bcrypt-hashed in PostgreSQL.
- Company name — shown on your dashboard and exported report headers. Metadata only.
What happens next
On submit, OrcheStack:
- Inserts a row in
platform.userswith your details. The password is bcrypt-hashed (cost factor 12) before storage. - Creates a session in
platform.sessionsand issues you a secure, HTTP-only session cookie (12-hour TTL by default). - Redirects you to the OrcheStack admin dashboard at
/app. - You land on the service selection page — see Step 3 — Configure services.
Want to change your password or email later? See Account management — you manage your own credentials from the admin dashboard without touching the database.
Adding more users
After the first user bootstrap, self-signup is disabled. New users are added by an Admin from the dashboard Users page. This prevents strangers from registering if your OrcheStack instance is exposed publicly.
See Roles & permissions for how to design the permission matrix for each role.