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
- A domain or subdomain of your own, for example
nube.example.com. - A DNS record at your domain provider: type
Awith the server's public IP (plusAAAAif it has IPv6). Not needed with Cloudflare Tunnel: the tunnel creates it for you. - 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
| Option | When |
|---|---|
| Caddy | The simplest. The installer sets it up for you with --domain. |
| Nginx | If you already run Nginx on the server for other sites. |
| Nginx Proxy Manager | If you'd rather manage domains and certificates from a web UI. Common on NAS. |
| Traefik | If Traefik already sits in front of your containers. |
| Cloudflare Tunnel | No 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).