Unbound is a validating, recursive, and caching DNS resolver.
Note that this image is distroless!
"Distroless" images contain only your application and its runtime dependencies. They do not contain package managers, shells or any other programs you would expect to find in a standard Linux distribution.
Run a recursive dns server on host port 53 with the default configuration.
docker run --name unbound \
-p 53:53/tcp -p 53:53/udp \
klutchell/unbound
Optionally mount
custom configuration
from a host directory. Files must be readable by user/group 101:102
or world.
docker run --name unbound \
-p 53:53/tcp -p 53:53/udp \
-v /path/to/config:/etc/unbound/custom.conf.d \
klutchell/unbound
The cache DB module was compiled into daemon, but is disabled by default. To enable this module, follow this steps:
- Create a
cachedb.conf
under your custom configuration directory/path/to/config/custom.conf.d
; - Add a
server
directive with module configuration to enablecachedb
module; - Add a
cachedb
directive with Redis credentials;
server:
module-config: "validator cachedb iterator"
cachedb:
backend: "redis"
redis-server-host: redis
redis-server-port: 6379
redis-expire-records: yes
Files must be readable by user/group 101:102
or world.
Examples of docker-compose usage can be found in examples.
This software is licensed under the BSD 3-Clause License.
Original software is by NLnet Labs: https://unbound.net