jaysonsantos
jaysonsantos2mo ago

v4 local run won't serve ui

Hey there folks, while trying to run the example from the docs on macos, the ui will always 404, is that something known? to run i did
ZITADEL_DATABASE_POSTGRES_HOST=localhost ZITADEL_DATABASE_POSTGRES_PORT=5432 ZITADEL_DATABASE_POSTGRES_DATABASE=zitadel ZITADEL_DATABASE_POSTGRES_USER_USERNAME=jayson.reis ZITADEL_DATABASE_POSTGRES_USER_PASSWORD= ZITADEL_DATABASE_POSTGRES_USER_SSL_MODE=disable ZITADEL_DATABASE_POSTGRES_ADMIN_USERNAME=jayson.reis ZITADEL_DATABASE_POSTGRES_ADMIN_PASSWORD= ZITADEL_DATABASE_POSTGRES_ADMIN_SSL_MODE=disable ZITADEL_EXTERNALSECURE=false ./.devenv/state/zitadel/zitadel start-from-init --masterkey "MasterkeyNeedsToHave32Characters" --tlsMode disabled
ZITADEL_DATABASE_POSTGRES_HOST=localhost ZITADEL_DATABASE_POSTGRES_PORT=5432 ZITADEL_DATABASE_POSTGRES_DATABASE=zitadel ZITADEL_DATABASE_POSTGRES_USER_USERNAME=jayson.reis ZITADEL_DATABASE_POSTGRES_USER_PASSWORD= ZITADEL_DATABASE_POSTGRES_USER_SSL_MODE=disable ZITADEL_DATABASE_POSTGRES_ADMIN_USERNAME=jayson.reis ZITADEL_DATABASE_POSTGRES_ADMIN_PASSWORD= ZITADEL_DATABASE_POSTGRES_ADMIN_SSL_MODE=disable ZITADEL_EXTERNALSECURE=false ./.devenv/state/zitadel/zitadel start-from-init --masterkey "MasterkeyNeedsToHave32Characters" --tlsMode disabled
then going to http://localhost:8080/ui/console redirects to http://localhost:8080/ui/v2/login/login?authRequest=V2_332068919856595383 which then shows 404 and {"code":5, "message":"Not Found"} migration works fine and it starts fine on an empty db log following:
5 Replies
jaysonsantos
jaysonsantosOP2mo ago
INFO[0000] setup completed caller="/home/runner/work/zitadel/zitadel/cmd/setup/setup.go:117"
_____ ___ _____ _ ____ _____ _
|__ / |_ _| |_ _| / \ | _ \ | ____| | |
/ / | | | | / _ \ | | | | | _| | |
/ /_ | | | | / ___ \ | |_| | | |___ | |___
/____| |___| |_| /_/ \_\ |____/ |_____| |_____|

===============================================================

Version : v4.0.0
TLS enabled : false
External Secure : false
Machine Id Method : Private Ip
Console URL : http://localhost:8080/ui/console
Health Check URL : http://localhost:8080/debug/healthz

Warning: you're using plain http without TLS. Be aware this is
not a secure setup and should only be used for test systems.
Visit: https://zitadel.com/docs/self-hosting/manage/tls_modes

===============================================================
INFO[0000] setup completed caller="/home/runner/work/zitadel/zitadel/cmd/setup/setup.go:117"
_____ ___ _____ _ ____ _____ _
|__ / |_ _| |_ _| / \ | _ \ | ____| | |
/ / | | | | / _ \ | | | | | _| | |
/ /_ | | | | / ___ \ | |_| | | |___ | |___
/____| |___| |_| /_/ \_\ |____/ |_____| |_____|

===============================================================

Version : v4.0.0
TLS enabled : false
External Secure : false
Machine Id Method : Private Ip
Console URL : http://localhost:8080/ui/console
Health Check URL : http://localhost:8080/debug/healthz

Warning: you're using plain http without TLS. Be aware this is
not a secure setup and should only be used for test systems.
Visit: https://zitadel.com/docs/self-hosting/manage/tls_modes

===============================================================
INFO[0000] scheduling service ping caller="/home/runner/work/zitadel/zitadel/internal/serviceping/worker.go:283" interval="32 10 * * *"
INFO[0000] auth request cache disabled caller="/home/runner/work/zitadel/zitadel/internal/auth_request/repository/cache/cache.go:31" error="must provide a positive size"
INFO[0000] auth request cache disabled caller="/home/runner/work/zitadel/zitadel/internal/auth_request/repository/cache/cache.go:36" error="must provide a positive size"
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oauth/v2/authorize
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oauth/v2/device_authorization
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oauth/v2/token
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oauth/v2/introspect
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oidc/v1/userinfo
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oauth/v2/revoke
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oidc/v1/end_session
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oauth/v2/keys
INFO[0001] server is listening on [::]:8080 caller="/home/runner/work/zitadel/zitadel/cmd/start/start.go:677"
INFO[0000] scheduling service ping caller="/home/runner/work/zitadel/zitadel/internal/serviceping/worker.go:283" interval="32 10 * * *"
INFO[0000] auth request cache disabled caller="/home/runner/work/zitadel/zitadel/internal/auth_request/repository/cache/cache.go:31" error="must provide a positive size"
INFO[0000] auth request cache disabled caller="/home/runner/work/zitadel/zitadel/internal/auth_request/repository/cache/cache.go:36" error="must provide a positive size"
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oauth/v2/authorize
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oauth/v2/device_authorization
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oauth/v2/token
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oauth/v2/introspect
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oidc/v1/userinfo
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oauth/v2/revoke
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oidc/v1/end_session
time=2025-08-05T22:08:17.980+02:00 level=INFO msg="registered route" endpoint=/oauth/v2/keys
INFO[0001] server is listening on [::]:8080 caller="/home/runner/work/zitadel/zitadel/cmd/start/start.go:677"
Rajat
Rajat2mo ago
hey @jaysonsantos welcome to the server I just tried reproducing the problem can you try it with all files in a clean directory and with fresh data?. create a directory as mkdir /tmp/clean and then cd /tmp/clean and delete any running containers docker compose down -v and then trying to run the setup again from this directory /tmp/clean
No description
No description
Rajat
Rajat2mo ago
unless you didn't chage anything on the setup, once everything is up asnd ready, you should go here https://localhost/ui/console?login_hint=zitadel-admin@zitadel.localhost and it will take you to the warning page -> proceed -> Login page the default password is Password1!
jaysonsantos
jaysonsantosOP2mo ago
hi there, with docker it seems to work but the downloaded binary it won't serve it
Rajat
Rajat4w ago
hey @jaysonsantos can you please this new guide that we just published https://zitadel.com/docs/self-hosting/deploy/compose

Did you find this page helpful?