Official ISC BIND 9 Docker, based on Alpine image. Maintained on a best-effort basis by ISC.org.
1M+

Official ISC BIND 9 Docker repository. This free Docker is maintained on a best-effort basis.
You need to properly mount the following volumes:
/etc/bind - for configuration, your named.conf lives here/var/cache/bind - this is the working directory, e.g. options { directory "/var/cache/bind"; };/var/lib/bind - this is usually the place where the secondary zones are placed/var/log - for logfilesdocker run \
--name=bind9 \
--restart=always \
--publish 53:53/udp \
--publish 53:53/tcp \
--publish 127.0.0.1:953:953/tcp \
internetsystemsconsortium/bind9:9.18
docker run \
--name=bind9 \
--restart=always \
--publish 53:53/udp \
--publish 53:53/tcp \
--publish 127.0.0.1:953:953/tcp \
internetsystemsconsortium/bind9:9.20
Here you will actually want to provide the desired configuration in /etc/bind/named.conf and primary zones, etc… (e.g. it’s not magic, you will have to configure it).
docker run \
--name=bind9 \
--restart=always \
--publish 53:53/udp \
--publish 53:53/tcp \
--publish 127.0.0.1:953:953/tcp \
--volume /etc/bind \
--volume /var/cache/bind \
--volume /var/lib/bind \
--volume /var/log \
internetsystemsconsortium/bind9:9.18
docker run \
--name=bind9 \
--restart=always \
--publish 53:53/udp \
--publish 53:53/tcp \
--publish 127.0.0.1:953:953/tcp \
--volume /etc/bind \
--volume /var/cache/bind \
--volume /var/lib/bind \
--volume /var/log \
internetsystemsconsortium/bind9:9.20
The recursive DNS server doesn't need any configuration.
options {
directory "/var/cache/bind";
listen-on { 127.0.0.1; };
listen-on-v6 { ::1; };
allow-recursion {
none;
};
allow-transfer {
none;
};
allow-update {
none;
};
};
zone "example.com." {
type primary;
file "/var/lib/bind/db.example.com";
notify explicit;
};
BIND9 is licensed under the MPL2.0 license.
Content type
Image
Digest
sha256:26abca689…
Size
18.1 MB
Last updated
about 2 months ago
Requires Docker Desktop 4.37.1 or later.