Domains
Configure custom domains for a Skytells app — every app ships with a managed skytells.app subdomain and can be pointed to any domain you own via CNAME.
The Domains page shows all hostnames serving this app. Every app gets a managed Skytells domain automatically. You can add as many custom domains as you need on top of it.
Managed domain
Every app automatically receives a deployment domain in the format:
<app-name>.skytells.appThis domain is provisioned and renewed automatically — no DNS action required. It is always active as long as the app is running.
The managed domain appears under the Deployment domain section with a MANAGED badge. You can copy the URL or open it directly with the icons on the right.
Custom domains
The Custom domains section lets you attach your own domain or subdomain to this app. Traffic to the custom domain is routed through Skytells's reverse proxy to the running container.
Add a custom domain
Open Add Domain
Select + Add Domain in the top-right corner of the Custom domains section.
Enter the Domain Name
In the Add Custom Domain dialog, enter your domain name (e.g. app.example.com or example.com) and select Continue.
Add the CNAME Record
Skytells shows the required DNS record. Add a CNAME record in your DNS provider pointing your domain to the Skytells-provided target:
| Type | Name | Value |
|---|---|---|
| CNAME | app (or @ for root) | <target>.skytells.app |
Wait for DNS Propagation
Wait for DNS propagation (typically a few minutes, up to 48 hours depending on your provider's TTL). Skytells polls for the record automatically.
Domain Verified and SSL Provisioned
Once the CNAME is detected, Skytells provisions an SSL/TLS certificate automatically. The domain shows as Active in the list.
Cloudflare users: Set your CNAME record to DNS only (grey cloud icon), not Proxied (orange cloud). Running Cloudflare's proxy in front of Skytells can cause SSL negotiation conflicts and break routing. Once the domain is verified in Skytells, you may re-enable Cloudflare proxy features if your setup requires them — but verify the domain first with DNS only.
Root domain (apex domain)
Pointing a root domain (example.com without a subdomain) to Skytells requires CNAME flattening or ALIAS/ANAME record support. Not all DNS providers support this.
| Provider | Apex support |
|---|---|
| Cloudflare | Yes — CNAME on @ with DNS-only mode |
| AWS Route 53 | Yes — ALIAS record |
| Vercel DNS / Namecheap | Yes — ALIAS or CNAME flattening |
| Standard providers | Use a www subdomain instead |
If your provider does not support apex CNAMEs, redirect example.com → www.example.com at the DNS level and add www.example.com as the Skytells custom domain.
SSL / TLS
Skytells provisions a TLS certificate automatically for every verified custom domain using a managed certificate authority. Certificates auto-renew before expiry — no manual action needed.
HTTPS is enforced by default. HTTP requests to custom domains are automatically redirected to HTTPS.
Remove a custom domain
Select the trash icon next to the domain and confirm the removal. The domain stops routing to the app immediately. The managed *.skytells.app domain remains active.
Related
- App Overview — the Domains widget shows domain count and status.
- Enterprise Network — internal networking between apps in a project.
- Databases — External Access — Cloudflare warning for database external hosts.
How is this guide?
Environment
Manage build-time and runtime environment variables for a Skytells app — add, edit, and scope variables to control how your app builds and runs.
Logs
Stream real-time build and container output logs for a Skytells app — switch between Deployment logs and Runtime logs to debug builds and runtime behavior.