Standarize unbound, prepare for setup inclusion
- Use jinja template for configuration file (start.py) - Limit access to the Mailu subnet - Implement health checksmaster
parent
40d8e65762
commit
bcfce27ee2
@ -1,14 +0,0 @@
|
||||
FROM alpine:3.8
|
||||
|
||||
RUN apk add --no-cache unbound curl \
|
||||
&& curl -o /etc/unbound/root.hints https://www.internic.net/domain/named.cache \
|
||||
&& chown root:unbound /etc/unbound \
|
||||
&& chmod 775 /etc/unbound \
|
||||
&& apk del --no-cache curl \
|
||||
&& /usr/sbin/unbound-anchor -a /etc/unbound/trusted-key.key | true
|
||||
|
||||
COPY unbound.conf /etc/unbound/unbound.conf
|
||||
|
||||
EXPOSE 53/udp 53/tcp
|
||||
|
||||
CMD /usr/sbin/unbound
|
@ -0,0 +1,18 @@
|
||||
FROM python:3-alpine
|
||||
|
||||
RUN apk add --no-cache unbound curl bind-tools \
|
||||
&& pip3 install jinja2 \
|
||||
&& curl -o /etc/unbound/root.hints https://www.internic.net/domain/named.cache \
|
||||
&& chown root:unbound /etc/unbound \
|
||||
&& chmod 775 /etc/unbound \
|
||||
&& apk del --no-cache curl \
|
||||
&& /usr/sbin/unbound-anchor -a /etc/unbound/trusted-key.key | true
|
||||
|
||||
COPY start.py /start.py
|
||||
COPY unbound.conf /unbound.conf
|
||||
|
||||
EXPOSE 53/udp 53/tcp
|
||||
|
||||
CMD /start.py
|
||||
|
||||
HEALTHCHECK CMD dig @127.0.0.1 || exit 1
|
@ -0,0 +1,9 @@
|
||||
#!/usr/local/bin/python3
|
||||
|
||||
import jinja2
|
||||
import os
|
||||
|
||||
convert = lambda src, dst: open(dst, "w").write(jinja2.Template(open(src).read()).render(**os.environ))
|
||||
convert("/unbound.conf", "/etc/unbound/unbound.conf")
|
||||
|
||||
os.execv("/usr/sbin/unbound", ["-c /etc/unbound/unbound.conf"])
|
Loading…
Reference in New Issue