Well, I've recently been getting started with Docker so figured this would be a good opportunity to use that to address an immediate need that I, and potentially others, would need: A quick and easy lightweight DNS server that could be used for resolving my lab domain.
Prior to my lab going down, DNS was running on my Windows Domain Controller at 192.168.1.10. With limited resources and templates available, setting up a Windows DNS server would take a bit of time: Clone and Customize, Updates, DNS role install, Forward Lookup Zone setup, entries, etc... this could easily be a few hours of work.
How about Linux? Well, I know Bind is a powerful and popular solution, but I wanted to look for something smaller and simple to get up and running in the future within a couple minutes.
Enter Docker - I was fortunate enough to attend #DockerCon18 this year and recalled hearing something about Kubernetes replacing kubedns with CoreDNS so I decided to look into that and see if it would be something I could use.
After a bit of testing, I was able to consistently run a container that would resolve entries for my home lab domain - and - would resolve any updates to the host names that needed to be resolved.
- 32.9MB Container
- Simple text file formats for host definitions: DNS Zone format OR Hosts file format
- docker run command line
- Simple docker-compose line to get the container up and running
- Clone my repo from GitHub
- Modify two text files to resolve for the desired lab/test domain name
- Run the container