Caddy duckdns jellyfin

1. The problem I’m having:

I want to connect jellyfin outside my home. I have caddy.exe with duckdns module. My ports 80 and 443 are closed (dont know why) but have ports 9000 for jellyfin and 8000 (http) and 4443 (https) for caddy.

2. Error messages and/or full log output:

c:\Caddy>caddy run
2025/07/20 00:29:25.474 ←[34mINFO←[0m   maxprocs: Leaving GOMAXPROCS=12: CPU quota undefined
2025/07/20 00:29:25.475 ←[34mINFO←[0m   GOMEMLIMIT is updated   {"package": "github.com/KimMachineGun/automemlimit/memlimit", "GOMEMLIMIT": 7660685721, "previous": 9223372036854775807}
2025/07/20 00:29:25.478 ←[34mINFO←[0m   using adjacent Caddyfile
2025/07/20 00:29:25.484 ←[34mINFO←[0m   adapted config to JSON  {"adapter": "caddyfile"}
2025/07/20 00:29:25.484 ←[33mWARN←[0m   Caddyfile input is not formatted; run 'caddy fmt --overwrite' to fix inconsistencies    {"adapter": "caddyfile", "file": "Caddyfile", "line": 2}
2025/07/20 00:29:25.496 ←[34mINFO←[0m   admin   admin endpoint started  {"address": "localhost:2019", "enforce_origin": false, "origins": ["//[::1]:2019", "//127.0.0.1:2019", "//localhost:2019"]}
2025/07/20 00:29:25.498 ←[34mINFO←[0m   tls.cache.maintenance   started background certificate maintenance      {"cache": "0xc0001d8d00"}
2025/07/20 00:29:25.498 ←[34mINFO←[0m   http.auto_https server is listening only on the HTTPS port but has no TLS connection policies; adding one to enable TLS {"server_name": "srv0", "https_port": 4443}
2025/07/20 00:29:25.498 ←[34mINFO←[0m   http.auto_https enabling automatic HTTP->HTTPS redirects        {"server_name": "srv0"}
2025/07/20 00:29:25.499 ←[33mWARN←[0m   http    HTTP/2 skipped because it requires TLS  {"network": "tcp", "addr": ":8000"}
2025/07/20 00:29:25.499 ←[33mWARN←[0m   http    HTTP/3 skipped because it requires TLS  {"network": "tcp", "addr": ":8000"}
2025/07/20 00:29:25.499 ←[34mINFO←[0m   http.log        server running  {"name": "remaining_auto_https_redirects", "protocols": ["h1", "h2", "h3"]}
2025/07/20 00:29:25.499 ←[34mINFO←[0m   http    enabling HTTP/3 listener        {"addr": ":4443"}
2025/07/20 00:29:25.500 ←[34mINFO←[0m   http.log        server running  {"name": "srv0", "protocols": ["h1", "h2", "h3"]}
2025/07/20 00:29:25.501 ←[34mINFO←[0m   http    enabling automatic TLS certificate management   {"domains": ["peyeyo1958.duckdns.org"]}
2025/07/20 00:29:25.504 ←[33mWARN←[0m   tls     stapling OCSP   {"error": "no OCSP stapling for [peyeyo1958.duckdns.org]: no OCSP server specified in certificate", "identifiers": ["peyeyo1958.duckdns.org"]}
2025/07/20 00:29:25.521 ←[34mINFO←[0m   autosaved config (load with --resume flag)      {"file": "C:\\Users\\O\\AppData\\Roaming\\Caddy\\autosave.json"}
2025/07/20 00:29:25.521 ←[34mINFO←[0m   serving initial configuration
2025/07/20 00:29:25.522 ←[34mINFO←[0m   tls     storage cleaning happened too recently; skipping for now        {"storage": "FileStorage:C:\\Users\\O\\AppData\\Roaming\\Caddy", "instance": "34d1ace2-259a-4f56-b022-90abbefc6909", "try_again": "2025/07/21 00:29:25.522", "try_again_in": 86400}
2025/07/20 00:29:25.526 ←[34mINFO←[0m   tls     finished cleaning storage units

3. Caddy version:

Caddy: v2.10.0

4. How I installed and ran Caddy:

a. System environment:

Windows 10 64bit (up to date)

b. Command:

caddy run

c. Service/unit/compose file:

d. My complete Caddy config:

{

http_port 8000

https_port 4443

}
peyeyo1958.duckdns.org {
    reverse_proxy localhost:9000
}

5. Links to relevant resources:

I made the caddy.exe with xcaddy and Go.
I think I built it with " go install github.com/caddyserver/xcaddy/cmd/xcaddy@latest then xcaddy build
–with GitHub - caddy-dns/duckdns: Caddy module: dns.providers.duckdns " .

Neither of these two ports seems to be open. Make sure your router is configured to port-forward them to the server running Caddy.

Also, if this is your complete Caddyfile, it doesn’t look like you’re using the DuckDNS module at all … or at least, you haven’t configured it.

Thanks for the reply. I ended up using Tailscale.