The central service starts and stops
Its log says why: %ProgramData%\Routes\Central\Logs on Windows, journalctl -u routes-central on Linux, or
docker compose logs central.
| In the log | Cause | Fix |
|---|---|---|
| Login failed for user … | SQL Server does not know the service’s account, or it may not create the database | Give the right login dbcreator (NT AUTHORITY\SYSTEM on the same server, DOMAIN\HOST$ from another): see The database. |
| A network-related … error | SQL Server’s name or instance is wrong, TCP/IP is off, or a firewall blocks it | Check the server name, enable TCP/IP, open the port. |
| needs PostgreSQL 18 or later | An older PostgreSQL | Upgrade, or use another server. |
| The connection string must name a database | No Database= |
Add it. |
| The database’s schema is version …, newer than this build knows | An older build pointed at a newer database | Install the newer build, or use another database. |
| … would serve the console and node API over plain HTTP | No certificate and HttpsMode=Http not set, on a non-local address |
Give it a certificate, remove the plain-HTTP address, or set HttpsMode (behind a TLS proxy only). See HTTPS. |
| Certificate … was not found in LocalMachine\My | The thumbprint is wrong, or the certificate was removed | Fix CertificateThumbprint. |
| Secrets cannot be encrypted on this server | The SecretProtection setting cannot be used (wrong account, missing file) |
See Several central servers. |
| Development mode … only listens on this machine | DevelopmentUser is set on a real server |
Remove it. Never use development mode in production. |
While the database cannot be reached, the service keeps trying, and the console says the database is not ready. Nodes keep routing meanwhile.
