1. The problem I’m having:
I am unable to reverse proxy my Jellyfin instance as I get a 502 bad gateway error
2. Error messages and/or full log output:
2024/05/09 08:48:42.779 INFO using adjacent Caddyfile
2024/05/09 08:48:42.781 WARN Caddyfile input is not formatted; run 'caddy fmt --overwrite' to fix inconsistencies {"adapter": "caddyfile", "file": "Caddyfile", "line": 2}
2024/05/09 08:48:42.783 INFO admin admin endpoint started {"address": "localhost:2019", "enforce_origin": false, "origins": ["//localhost:2019", "//[::1]:2019", "//127.0.0.1:2019"]}
2024/05/09 08:48:42.783 INFO 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": 443}
2024/05/09 08:48:42.783 INFO http.auto_https enabling automatic HTTP->HTTPS redirects {"server_name": "srv0"}
2024/05/09 08:48:42.783 INFO tls.cache.maintenance started background certificate maintenance {"cache": "0xc0004a1100"}
2024/05/09 08:48:42.784 INFO http enabling HTTP/3 listener {"addr": ":443"}
2024/05/09 08:48:42.784 INFO http.log server running {"name": "srv0", "protocols": ["h1", "h2", "h3"]}
2024/05/09 08:48:42.784 INFO http.log server running {"name": "remaining_auto_https_redirects", "protocols": ["h1", "h2", "h3"]}
2024/05/09 08:48:42.785 INFO http enabling automatic TLS certificate management {"domains": ["jellyfin.aaronrodrigues.com"]}
2024/05/09 08:48:42.786 INFO autosaved config (load with --resume flag) {"file": "/root/.config/caddy/autosave.json"}
2024/05/09 08:48:42.786 INFO serving initial configuration
2024/05/09 08:48:42.833 WARN tls storage cleaning happened too recently; skipping for now {"storage": "FileStorage:/root/.local/share/caddy", "instance": "efcbbcd2-a93a-4799-850b-038970d25ca2", "try_again": "2024/05/10 08:48:42.833", "try_again_in": 86399.999998981}
2024/05/09 08:48:42.833 INFO tls finished cleaning storage units
2024/05/09 08:54:35.169 ERROR http.log.error dial tcp 192.168.1.113:8096: connect: connection refused {"request": {"remote_ip": "192.168.1.99", "remote_port": "54620", "client_ip": "192.168.1.99", "proto": "HTTP/2.0", "method": "GET", "host": "jellyfin.aaronrodrigues.com", "uri": "/", "headers": {"Sec-Fetch-Mode": ["navigate"], "User-Agent": ["Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4.1 Safari/605.1.15"], "Accept-Language": ["en-GB,en;q=0.9"], "Sec-Fetch-Dest": ["document"], "Accept": ["text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"], "Sec-Fetch-Site": ["none"], "Cookie": [], "Accept-Encoding": ["gzip, deflate, br"]}, "tls": {"resumed": false, "version": 772, "cipher_suite": 4867, "proto": "h2", "server_name": "jellyfin.aaronrodrigues.com"}}, "duration": 0.00068901, "status": 502, "err_id": "6i6tbkgm2", "err_trace": "reverseproxy.statusError (reverseproxy.go:1267)"}
3. Caddy version:
v2.7.6
4. How I installed and ran Caddy:
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
a. System environment:
Debian 6.1.90-1 x64
Has docker containers running (pi-hole, Jellyfin, librenms)
b. Command:
sudo caddy run
d. My complete Caddy config:
jellyfin.aaronrodrigues.com {
handle {
reverse_proxy 192.168.1.113:8096 {
}
}
}