Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Might be worth mentioning to check the status of your DNS in Health Check #82

Open
ericblade opened this issue Jun 23, 2024 · 4 comments

Comments

@ericblade
Copy link

URL to the Wiki page

https://github.com/qdm12/gluetun-wiki/blob/main/faq/healthcheck.md

What's missing?

After spending a couple of hours poking at the Health Check page, and not really having any love with getting my container fixed, I happened to notice that DNS resolution was not working in any containers. A recent upgrade to my docker had caused my custom DNS settings to disappear, which caused DNS resolution to fail, which ... the only obvious thing blowing up was that my gluetun container kept failing healthcheck with cryptic errors.

Since no other containers were outwardly failing, the only thing I had to go on was that gluetun wasn't able to get to anything. Dropping into a terminal, I was able to use the gluetun container to reach things by IP but not by DNS... so.. yeah. Might be a tip worthy of passing on.

@qdm12
Copy link
Owner

qdm12 commented Jul 8, 2024

Were you not using the built-in DNS over TLS (Unbound) in Gluetun?

@ericblade
Copy link
Author

I don't have anything specifically configured. DNS does not work in any of my containers unless I specify a dns server setting in the docker config. Gluetun is the only piece of my stack that actually needs outbound DNS to function, though, as everything else mostly just talks internally using the built in network host names.

Since Gluetun was just continuously telling me to look at the healthcheck page, and the healthcheck page doesn't say anything about DNS, I thought I'd recommend adding something along the lines of "Check to make sure that DNS resolution inside the container actually works", since it's an easily overlookable problem that could fix the healthcheck.

@qdm12
Copy link
Owner

qdm12 commented Jul 29, 2024

I doubt this was the problem. Gluetun uses Unbound (for now) which goes through the tunnel. Even if, for example, your host or router would block DNS traffic, Gluetun's DNS would still work fine.

@ericblade
Copy link
Author

100% if I remove the dns setting in my docker config, none of my containers, including gluetun, can access DNS, and the gluetun healthcheck fails. And none of the advice in the wiki page helps because the problem is completely external to gluetun.

As to why it works that way, I don't know, I configure the DNS in my docker config, then all my containers work correctly. Perhaps it is something to do with running in WSL? I don't know. Just making a suggestion for a way to improve the docs, in that when I got name resolution working in docker, then the health check started working, so maybe it would be something to test for, that might save someone else from going through a couple of hours checking everything in the Wiki and being frustrated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants