Internal DNS, zero config — containers resolve themselves.

DNS Resolver combines CoreDNS and docker-gen in a single container. Every *.your.domain query resolves to your host IP; Traefik routes by Host() header. New containers become resolvable within seconds — no manual DNS edits required.

Why DNS Resolver?

    Auto container discovery
    docker-gen watches the Docker socket and rewrites the hosts file on every container start or stop. CoreDNS reloads it automatically.
    Wildcard zone
    Every *.your.domain query resolves to HOST_IP. Pair with Traefik: it inspects the Host() header and routes to the correct container.
    Environment-only config
    No Corefile or zone file to maintain. The entrypoint generates both from templates at every container start using your environment variables.
    Authoritative or split-horizon
    DNS_AUTHORITATIVE=true returns NXDOMAIN for unknowns (default). Set to false for split-horizon: unknown subdomains fall through to your upstream resolver.
    ACME DNS-01 support
    Enable ACME_DNS_ENABLED=true to forward auth.DOMAIN queries to an acme-dns sidecar — enabling DNS-01 certificate issuance without exposing port 80.
    Single container, two binaries
    CoreDNS 1.12 and docker-gen run as sibling processes inside one Alpine container. No orchestration overhead, no shared volumes.
Copyright © 2026