In this case, Caddy is a client to your Raspi3, so you need to make Caddy trust Raspi3. IN other words, Caddy needs to be able to verify that the certificate installed on Raspi3 is trusted.
Take a look at tls_trust_pool
In your case, you may need something like this:
# ...
reverse_proxy https://192.168.8.20:8443 {
transport http {
tls_trust_pool file /path/to/cert.pem
}
}
# ...
where /path/to/cert.pem is your Raspi3’s self-signed certificate.