Saltar al contenido

Caddy

HTTPS automático con Caddy, con el instalador o a mano.

Caddy pide y renueva solo el certificado de Let's Encrypt. Es la opción más sencilla y la que configura el instalador.

Con el instalador

Si instalaste con install.sh, dale tu dominio (puedes volver a ejecutarlo cuando quieras; conserva tus datos):

curl -fsSL https://kumoyami.com/install.sh | sudo bash -s -- --domain nube.example.com --email tu@example.com

El instalador comprueba que los puertos 80 y 443 están libres y que el DNS apunta al servidor, y crea en /opt/kumoyami:

  • Un Caddyfile con tu dominio, que pasa las peticiones al contenedor web.
  • Un docker-compose.override.yml con el servicio caddy (imagen caddy:2, puertos 80, 443 y 443/udp para HTTP/3). Docker Compose lo combina solo con el docker-compose.yml.

El primer certificado puede tardar unos minutos: necesita que el DNS ya apunte al servidor y que los puertos 80 y 443 lleguen hasta él. Para seguirlo:

cd /opt/kumoyami && sudo docker compose logs -f caddy

Para quitar Caddy (por ejemplo, para pasar a tu propio proxy), ejecuta el instalador con --no-caddy: detiene el servicio y aparta su configuración con un sufijo .disabled-FECHA.

A mano, con Caddy en el servidor

Si ya tienes Caddy instalado en el servidor (como paquete del sistema), añade a tu Caddyfile:

Caddyfile
nube.example.com {
	encode zstd gzip
	reverse_proxy 127.0.0.1:4890
}

Y recarga Caddy:

sudo systemctl reload caddy

No hace falta nada más: tampoco para la unidad de red WebDAV ni para subir archivos grandes.