All has been well for about a week, today when I tried to add blocklists and subsequently update Gravity (all using the web console). I got this message on the screen:
[✗] DNS resolution is currently unavailable
[✗] DNS resolution is not available after pihole gravity update
The "blocked domains" count on the dashboard clearly shows that no blocked domains were added. Contrary to the error messages, DNS resolution for my home network continues to work fine, and some ads continue to be blocked (just under 10%, according to the dashboard).
What I expected to happen instead:
Domains on Blocklist count in the dashboard go up by some noticeable number
Possibly, the % blocked requests to up some
I tried a Web search for the error messages I got. I ran across a handful of reports of the same message, but all seemed to be having different problems. I tried:
change /etc/resolv.conf (on the RPi) so it only points to 127.0.0.1 - this changed nothing
Removing all the newly added blocklists and re-running gravity update, no luck
Get a CLI into the docker container to check e.g. its /etc/resolv.conf, but docker attach pihole just gets me a blinking cursor and SSH doesn't work either. This has meant I can't do e.g. pihole -g to see if it spits out anything useful on the CLI.
Hmm... I thought that was running an official image! Thanks for pointing that out. It's what I get for more-or-less blindly copying someone else's Ansible script.
I'll go take a careful look and come back if I'm still having issues with the official build.
I don't understand why that diff is showing up, as far as I can tell I'm pulling the image down directly from pihole/pihole:latest and running that.
So I searched some more and found that all I had to do, was to edit the /etc/resolvconf.conf file on the host RPi and uncomment the line:
# If you run a local name server, you should uncomment the below line and
# configure your subscribers configuration files below.
name_servers=127.0.0.1
After that I rebooted the RPi, and suddenly I could update Gravity without any problems.
The private repo containing the docker compose file. For convenience, I keep the Ansible config file and playbook in the same repo, so those get cloned too.
If I understood correctly, the docker compose work happens on the RPi, before firing up the container.