/dnsproxy-docker

A dead-simple, multi-arch Docker image for AdguardTeam/dnsproxy. Supports DoT, DoH, DoQ and DNSCrypt.

Primary LanguageDockerfile

DNS Proxy Docker

A dead-simple, multi-arch Docker image for AdguardTeam/dnsproxy. Supports DNS-over-TLS, DNS-over-HTTPS, DNS-over-QUIC and DNSCrypt.

Releases are automated and published in the 24 hours following a new version of DNS Proxy.

Docker Hub Docker Hub GitHub release

Docker build

Usage

TL;DR: start the container and put the arguments for the dnsproxy command in the ARGS environment variable. Details on the arguments and examples can be found in the original repo.

Vanilla Docker

docker run -d \
  -e "ARGS=-u 8.8.8.8:53 -u 1.1.1.1:53 --cache" \
  -p 53:53 \
  axeleroy/dnsproxy:latest

Docker Compose

version: "3"
services:
  dnsproxy:
    image: axeleroy/dnsproxy:latest
    environment:
      - ARGS=-u 8.8.8.8:53 -u 1.1.1.1:53 --cache 
    ports:
      - "53:53"

DNS-over-TLS and DNS-over-HTTPS with Pi-hole and unbound

I made an example Docker Compose stack that shows you how to set up Pi-hole using unbound as its upstream DNS server with DNS-over-TLS and DNS-over-HTTPS capabilities (for using your Pi-hole outside your home on your mobile devices).

Building the image

Simply run the docker build command and specify the desired version in the dnsproxy_version argument.

docker build --build-arg dnsproxy_version=v0.46.5 -t axeleroy/dnsproxy:custom .