Skip to content

Custom domains

Point your own hostname at a site, verify DNS, get HTTPS, and avoid the common certificate traps.

Custom domain - DNS record, edge certificate, and site origin

What a custom domain does

A custom domain binds your own hostname (for example www.example.com) to one site on one instance. The node edge terminates TLS, gets a certificate for the hostname, and forwards requests to that site's origin port.

  • One hostname maps to one site. If it is already attached elsewhere, the platform rejects the second claim.
  • The NairaCloud address keeps working. Attaching a custom domain does not remove the platform hostname or the sslip alias.
  • We never edit your DNS. You create the record at your provider; we verify it and issue the certificate.
  • Platform-managed names are reserved. You cannot attach a name under .sslip.io or .nairacloud.xyz.

Step by step

  1. Open the instance's Networking tab and copy the node's public IPv4.
  2. At your DNS provider, add an A record for the hostname, pointing at that IP.
  3. In Custom domain, choose the site that should receive the hostname and attach it.
  4. Wait for the checklist: DNS resolving, pointing here, certificate issued.
Hostname you wantRecordNameValue
example.comA@node IPv4
www.example.comAwwwnode IPv4
api.example.comAapinode IPv4

Use an A record for an apex or subdomain. Do not use a CNAME at the apex unless your provider supports it. TTL can be the default or 300 seconds while you test.

Cloudflare and other proxies

If your provider offers a proxy (Cloudflare's orange cloud, for example), switch the record to DNS-only while the certificate is being issued. A proxy that terminates TLS in front of us can prevent the platform from completing its certificate challenge. You can turn the proxy back on after the certificate is valid, but keep in mind that the proxy will then see and forward the traffic.

Provider notes

ProviderWhere to add the recordWatch out for
CloudflareDNS → Records → Add recordSet proxy status to DNS only until the certificate is issued.
NamecheapDomain List → Manage → Advanced DNSUse A Record; delete conflicting parking records.
GoDaddyDNS → Add New RecordUse the node IP, not a forwarding URL.
PorkbunDNS Records → Add RecordLeave the TTL at default or 300.
Any other providerDNS zone editorThe record type is A; the value is the node IPv4.

Troubleshooting

SymptomWhat to check
Hostname already attachedRemove it from the other instance first, or contact support if you own both.
DNS does not resolveWait for propagation, check the record name, and confirm there is no conflicting CNAME or parking page.
Certificate failedConfirm the A record points at this node, not your old host, and that the proxy is off while issuing.
502 after the domain worksThe domain is reaching the edge, but nothing is listening on the site's origin port. Test inside the instance with curl http://127.0.0.1:<port>.
Wrong site answersThe hostname is attached to a different site. Detach it and re-attach it to the correct one.

Detaching a domain

Removing a custom domain releases our route and certificate. Requests to the hostname stop reaching your instance. Your DNS record stays exactly where it is; delete it at your provider if you no longer need it. Existing links break, so plan the change.

Ask a question...
Ctrl+I