$NS and, on Docker Swarm, the stack name in $STACK: the name you deploy the stack with, ai-2501 in Deploy, or the CLI’s stack name for an installation moved from the CLI.
Common issues
The chart refuses values.yaml
The chart checksvalues.yaml against its schema and names the value it refuses, for example a public registry, an OpenShift installation with the database 2501 provides, or Docker Swarm without commandCenter.expose.port. Fix that value and render again. See values.yaml.
Sign-in fails with INVALID_ORIGIN
Command Center accepts a sign-in only fromhttps://<commandCenter.host>, exactly: the browser must open that address, with no port and no other host name or IP address. Open Command Center at that address, or change commandCenter.host (COMMAND_CENTER_HOST on Docker Swarm) to the name users open.
Pods wait in CreateContainerConfigError or ContainerCreating
A secret they read does not exist yet.kubectl -n "$NS" describe pod <pod> names it. Create it as Create the secrets shows: the pod starts on its own once it exists.
Image pull fails
Every image comes fromglobal.imageRegistry, by digest. Check that the build’s images were copied completely, with every repository under 2501.ai/release/, and that the registry login secret in global.imagePullSecrets exists in the namespace. On Docker Swarm, run docker login before docker stack deploy --with-registry-auth.
Database connection failed
DATABASE_URL and DIRECT_URL in pg-connection-v1 must reach it; DIRECT_URL bypasses any connection pooler. The engine’s migration step and the bootstrap log say why they cannot connect.
Migration failed
The engine applies the migrations before it starts, and Command Center waits for them. Read the engine’s migration log, fix the cause, then restart the engine:Viewing logs
Exporting logs for a bug report
The Command Center’s Debug page (admin-only) lets you browse structured logs and download them: an NDJSON export of whatever the current filters show, or a bundle with everything about one trace, task or job. Downloads are anonymized by default: IP addresses, hostnames, MAC addresses and emails are replaced with stable placeholders ([ip-1], [host-2], …). The same value always maps to the same placeholder within one file, so a connection chain or a repeated failure stays readable without revealing your infrastructure. Anonymized files carry an -anon suffix in their name.
Turn the Anonymize toggle off to download the raw records instead - for example when the file stays inside your organization.
Health checks
Support
- Check the logs and the health of the services.
- Check
values.yamland the secrets against this guide. - Contact 2501 support, with the build you run (the
<build>of the files you applied) and the logs.

