ping
uses ICMP so it’s not a representative test for how Caddy tries to connect.
When using HTTP (which is a layer on top of TCP), I recommend you use curl -v
to try to make an HTTP request instead. It’s a more representative test of what Caddy is trying to do.
Are you sure your upstream has port 8088 allowed in its firewall?