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