What's already set up
The one-click ZITADEL installation on Leneex provisions three coordinated Docker services: PostgreSQL for the event-sourced identity store, the ZITADEL core API, and the separate Login UI (v2) that shares the core's network namespace. Before your first deploy, check the panel's environment variables to see whether the containers use a restart: unless-stopped policy and whether the masterkey and database passwords were generated automatically. This one click automation ZITADEL setup skips the manual compose-file editing that a from-scratch install requires, but the masterkey it generates is the single credential that decrypts your database — losing it means losing access to every identity in the instance, so back it up outside the VPS immediately.
First login
Open https://<your-domain>/ui/console once the containers report healthy. On a fresh ZITADEL instance the bootstrap admin typically follows the pattern zitadel-admin@zitadel.<domain> with the default password Password1!, unless the installer overrides it. Change that password and enable MFA on the admin account before doing anything else; this is the account that controls every organization on the instance.
Domain, TLS, and the Login V2 split
ZITADEL v4 splits into two services that must share one public origin behind a reverse proxy — if only the core API is reachable and nothing serves /ui/v2/login, interactive sign-in breaks even though the API itself looks healthy.







