Various problems, but I think it relates to either DNS or Docker sock being inaccessible

User defined networks use the built-in dns resolver on 127.0.0.11, it is used for dns-based service discovery.
Whatever is configured in the host’s `/etc/resolv.conf´ file, is used as upstream of the builtin dns resolver

Can you explain why any service should be able to use pihole, if its listening on port 500 instead of 53?