engine: document the embedded DNS server and its metrics - #26136
Open
randomizedcoder wants to merge 2 commits into
Open
randomizedcoder wants to merge 2 commits into
randomizedcoder wants to merge 2 commits into
Conversation
Add a page describing Docker Engine's embedded DNS server for user-defined networks: when it's used, which record types it answers itself, where its upstream servers come from, how it fails over between them, how --dns changes forwarding, the ndots behaviour, and troubleshooting steps. Link it from the "DNS services" section of the networking overview. Everything on the page describes current behaviour, so it can be published independently of any engine change. Assisted-By: Claude Code Signed-off-by: Dave Seddon <dave.seddon.ca@gmail.com>
Add an "Embedded DNS server metrics" section to the Prometheus page, listing the libnetwork_resolver_* metrics and their labels, with an example query for the rate of upstream failovers. Point to the metrics from the failover and troubleshooting sections of the DNS page. This depends on the corresponding Docker Engine change (moby/moby: "libnetwork: add Prometheus metrics to resolver") and should not be published before that change ships in a release. Assisted-By: Claude Code Signed-off-by: Dave Seddon <dave.seddon.ca@gmail.com>
✅ Deploy Preview for docsdocker ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
G'day! Docker's embedded DNS server (
127.0.0.11) is only mentioned in passing in the networking docs today: containers on user-defined networks use it, and it forwards to the host's servers. What it actually resolves itself, which upstream servers it uses and from which network namespace, how it fails over between them, and what--dnschanges, aren't documented anywhere. This PR adds that, in two commits with different merge timelines:engine: document the embedded DNS server. New pagecontent/manuals/engine/network/dns.md, "DNS resolution in containers": when the embedded server is used, record types answered locally (A, AAAA, PTR, SRV, MX), upstream server selection (hostresolv.confvs--dns/daemon.json), the in-order failover rules and timeouts, internal networks, limits,ndotsbehaviour, and troubleshooting; plus a link from the "DNS services" section of the networking overview. Everything on the page describes current behaviour, checked against the Engine source (daemon/libnetwork/resolver.go,sandbox.go,internal/resolvconf), so this commit can be published on its own.engine: document embedded DNS server metrics. New "Embedded DNS server metrics" section on the Prometheus page listing thelibnetwork_resolver_*metrics and their labels, with an example query for upstream failovers, and pointers to it from the failover and troubleshooting sections of the new page. This commit must wait for the Engine change to ship.Related issues or tickets
libnetwork_resolver_*metrics. Commit 1 can merge independently.Reviews
Created with: Claude Code