Custom domains
Set up a CNAME and a TXT record to reach your app on a domain you own.
runlot domain add app.example.comRunning the command tells you which DNS records to create.
Add these two lines to your DNS:
CNAME app.example.com → apps.runlot.app
TXT _runlot-verify.app.example.com → <token>
The CNAME connects your app and the TXT record verifies domain ownership. Once your DNS changes have propagated, run `runlot domain verify app.example.com` to check right away; the system also checks automatically every minute.With only the TXT record, ownership is verified but traffic won't reach your app. Create both the CNAME and the TXT record.
Viewing status
runlot domain listHost Type Status
app.example.com custom connected
my-app.me.runlot.app default connectedThe default row is the address every project gets.
| Status | Meaning |
|---|---|
verifying | Waiting for the DNS records to propagate. |
issuing certificate | Ownership is verified and the TLS certificate is being issued. |
connected | Your app is reachable at this address. |
error | runlot domain list shows the reason for the error. |
Traffic is only routed to addresses whose status is connected.
Checking right away
runlot domain verify app.example.comThe system checks automatically every minute. If you just created the DNS records, use this command to check immediately.
Disconnecting
runlot domain rm app.example.comThe command asks for confirmation. Once disconnected, your app is no longer reachable at that address.
TLS
TLS certificates are issued and renewed automatically. There is nothing for you to manage.
Restrictions
- You cannot connect
*.runlot.appor*.runlot.devsubdomains. - Wildcard hosts (
*.example.com) are not supported. - Internationalized domains are normalized to punycode.
- Custom domains are HTTP only. For
psql, connect to the project's wire address (<project>--<org>.wire.runlot.app) instead of your custom domain.
Why ownership is verified separately
Without TXT ownership verification, someone could register a domain they don't own before its real owner does. To prevent that, runlot verifies domain ownership as an additional step.