Skip to content

Domain and HTTPS

How to put KumoYami on your own domain with an HTTPS certificate, and which option to pick.

KumoYami only listens inside the server, on 127.0.0.1:4890. To serve it on your domain with HTTPS, you put a reverse proxy in front: it takes visits on ports 80 and 443, looks after the certificate and hands each request to KumoYami.

Before you choose

  1. A domain or subdomain of your own, for example nube.example.com.
  2. A DNS record at your domain provider: type A with the server's public IP (plus AAAA if it has IPv6). Not needed with Cloudflare Tunnel: the tunnel creates it for you.
  3. Ports 80 and 443 open to the server, in its firewall and your provider's (or on your router, if the machine is at home). Not needed with Cloudflare Tunnel either.

Which option to pick

OptionWhen
CaddyThe simplest. The installer sets it up for you with --domain.
NginxIf you already run Nginx on the server for other sites.
Nginx Proxy ManagerIf you'd rather manage domains and certificates from a web UI. Common on NAS.
TraefikIf Traefik already sits in front of your containers.
Cloudflare TunnelNo ports to open: machines at home, CGNAT, or routers that won't allow it.

Why the domain matters

  • Connecting OneDrive: the redirect URI you register in Azure includes your site's address. If you change domain, add the new one in Azure.
  • Passkeys: they only work on the domain where they were created. Set up your domain before adding passkeys to your admin account.
  • Share links, upload boxes and albums: they're shared using the site's address.

Is your install on port 3000?

Installs made before the switch to port 4890 listen on 127.0.0.1:3000. In the examples on these pages, use your install's port: it's the first number on the ports line of your docker-compose.yml (or KUMOYAMI_PORT in .env).