Moving Docker bind container to github so that I can autobuild in docker hub

This commit is contained in:
Ventz Petkov 2016-01-10 16:11:56 -05:00
commit 5b202c1019
2 changed files with 42 additions and 0 deletions

22
Dockerfile Normal file
View File

@ -0,0 +1,22 @@
FROM alpine:latest
RUN apk --update add bind
RUN mkdir -m 0755 -p /var/run/named && chown root:named /var/run/named
# /var/cache/bind needs to be owned by "bind"
# since we are mounting, do it manually
# NOTE: Per Dockerfile manual --> need to mkdir the mounted dir to chown
RUN mkdir /var/cache/bind
RUN chown named:named /var/cache/bind
RUN chmod -R 0775 /var/cache/bind
# Mounts
# NOTE: Per Dockerfile manual -->
# "if any build steps change the data within the volume
# after it has been declared, those changes will be discarded."
VOLUME ["/etc/bind"]
VOLUME ["/var/cache/bind"]
EXPOSE 53
CMD ["/usr/sbin/named", "-c", "/etc/bind/named.conf", "-g", "-u", "named"]

20
README.md Normal file
View File

@ -0,0 +1,20 @@
NOTE: Example assumes you have a "/dns-slave01" with your container specific data!
Change as needed with the SRC data that you are mounting into the container.
## Needed Data (storage) Directory isite:
This container assumes you have a "/dns" folder with your container specific data:
You can change that folder as needed, but make sure you update the "-v" mounts for run time
1.) *REQUIRED* In your /dns/etc/bind a file "named.conf", which acts as an entry point to your configs
2.) A "/dns/var/cache/bind" directory for all of the master or slave zones. If it's for slave zones, it will populate automatically and you can leave it blank.
3.) *OPTIONAL* "/dns/var/log/named" directory for logging your DNS requests/returns/other breakdown.
**Using Container:**
```
docker run --name=dns-slave01 -d --dns=8.8.8.8 --dns=8.8.4.4 \
-p 53:53/udp -p 53:53 \
-v /dns-slave01/etc/bind:/etc/bind \
-v /dns-slave01/var/cache/bind:/var/cache/bind \
-v /dns-slave01/var/log/named:/var/log/named \
ventz/bind
```