A fork of sameersbn/bind repo, what's different?
- Multiarch Support:
- amd64
- armv7, arm64 i.e. supports RPi 3/4
- Running on Ubuntu Hirsute
- Bind: 9.16.8
- Webmin: Always pulls latest (during image build)
- Added Timezone (TZ) support
- Image auto-builds on schedule (every Sat 00:00 BST)
- Ubuntu updates will be applied during each scheduled build
- Reverse Proxy friendly (utkuozdemir/docker-bind)
- Fixes to utkuozdemir/docker-bind's 'Reverse Proxy friendly' update.
- Cleanup of config & miniserv.conf when variables are used & then removed
- Removing duplicate entries to config & miniserv.conf
Docker container image for BIND DNS server bundled with the Webmin interface.
BIND is open source software that implements the Domain Name System (DNS) protocols for the Internet. It is a reference implementation of those protocols, but it is also production-grade software, suitable for use in high-volume and high-reliability applications.
Tags
Tag | Description | Build Status |
---|---|---|
latest | master/stable | |
dev | development, pre-release | |
exp | unstable, experimental |
Automated builds of the image are available on Dockerhub and is the recommended method of installation.
docker pull eafxx/bind
OR
Alternatively you can build the image yourself.
docker build -t eafxx/bind github.com/eafxx/docker-bind
Docker Run:
docker run --name bind -d --restart=always \
-p 53:53/tcp -p 53:53/udp -p 10000:10000/tcp \
-v /path/to/bind/data:/data \
eafxx/bind
OR
Docker Compose
bind:
container_name: bind
hostname: bind
network_mode: bridge
image: eafxx/bind
restart: unless-stopped
ports:
- "53:53/tcp"
- "53:53/udp"
- 10000:10000/tcp
volumes:
- /path/to/bind/data:/data
environment:
- WEBMIN_ENABLED=true
- WEBMIN_INIT_SSL_ENABLED=false
- WEBMIN_INIT_REFERERS=dns.domain.com
- WEBMIN_INIT_REDIRECT_PORT=10000
- ROOT_PASSWORD=password
- TZ=Europe/London
When the container is started the Webmin service is also started and is accessible from the web browser at https://serverIP:10000. Login to Webmin with the username root
and password password
. Specify --env ROOT_PASSWORD=secretpassword
on the docker run
command to set a password of your choosing. The launch of Webmin can be disabled if not required.
Container images are configured using parameters passed at runtime (such as those above).
Parameter | Function |
---|---|
-p 53:53/tcp -p 53:53/udp |
DNS TCP/UDP port |
-p 10000/tcp |
Webmin port |
-e WEBMIN_ENABLED=true |
Enable/Disable Webmin (true/false) |
-e ROOT_PASSWORD=password |
Set a password for Webmin root. Parameter has no effect when the launch of Webmin is disabled. |
-e WEBMIN_INIT_SSL_ENABLED=false |
Enable/Disable Webmin SSL (true/false). If Webmin should be served via SSL or not. Defaults to true . |
-e WEBMIN_INIT_REFERERS |
Enable/Disable Webmin SSL (true/false). Sets the allowed referrers to Webmin. Set this to your domain name of the reverse proxy. Example: mywebmin.example.com . Defaults to empty (no referrer) |
-e WEBMIN_INIT_REDIRECT_PORT |
The port Webmin is served from. Set this to your reverse proxy port, such as 443 . Defaults to 10000 . |
-e WEBMIN_INIT_REDIRECT_SSL |
Enable/Disable Webmin SSL redirection after login (true/false). Set this to true if behind a SSL terminator. Defaults to false |
-e BIND_EXTRA_FLAGS |
Default set to -g |
-v /data |
Mount data directory for persistent config |
-e TZ=Europe/London |
Specify a timezone to use e.g. Europe/London |