Notploy

Domain and TLS

Route a hostname to your service and secure it with HTTPS.

A running service becomes reachable from the internet when a domain binds a hostname to its container port. This step connects the three layers described in the Ecosystem overview: DNS → domain → TLS.

1. Point DNS at your server

Create a DNS record for your hostname:

  • Type: A
  • Name: your hostname (for example app for app.example.com)
  • Value: your server's public IP address

If you use a supported DNS provider, Notploy can manage records for you; otherwise add the record at your provider's control panel.

Expected result: the hostname resolves to your server's IP (dig app.example.com).

2. Add the domain in Notploy

  1. Open the service and go to the Domains tab.
  2. Add a domain:
    • Host — app.example.com
    • Container port — the port your app listens on (for example 3000, or 80 for static builds)
    • HTTPS — enabled
    • Certificate — Let's Encrypt
  3. Save.

For Applications, Notploy writes a Traefik routing rule and applies it immediately — no redeploy needed. For Compose, the route is defined by Docker labels, so you must redeploy for a domain change to take effect. See Domains for the differences.

Expected result: Notploy requests a certificate and reports it issued.

3. Verify HTTPS

Open https://app.example.com. You should see your application over a valid certificate.

Certificate not issued?

Let's Encrypt validates by reaching your hostname, so it fails if DNS is wrong, port 80 is blocked, or a redirect prevents the challenge. Fix DNS first, then retry. See Certificates and Domains & Traefik troubleshooting.

Generated domains (testing only)

For quick tests without DNS setup, Notploy can generate a free traefik.me hostname. These are HTTP-only; enabling HTTPS on them requires an additional step described in Certificates.

On this page