2018-09-08 16:04:05 +02:00
FROM alpine:3.8
2018-03-31 20:33:45 -04:00
LABEL maintainer = "quentin.mcgaw@gmail.com" \
2018-09-21 16:39:08 +02:00
description = "VPN client to private internet access servers using OpenVPN, IPtables firewall, DNS over TLS with Unbound and Alpine Linux" \
2018-09-28 19:51:30 +02:00
download = "6.6MB" \
2018-09-21 16:39:08 +02:00
size = "15.7MB" \
ram = "13MB" \
2018-04-16 14:50:24 -04:00
cpu_usage = "Low" \
2018-03-31 20:33:45 -04:00
github = "https://github.com/qdm12/private-internet-access-docker"
2018-09-21 11:28:23 +02:00
ENV ENCRYPTION = strong \
PROTOCOL = tcp \
2018-10-28 14:08:14 +01:00
REGION = "CA Montreal" \
2018-10-04 22:24:43 +02:00
BLOCK_MALICIOUS = off
2018-10-28 14:08:14 +01:00
HEALTHCHECK --interval= 5m --timeout= 15s --start-period= 10s --retries= 2 \
CMD if [ [ " $( wget -qqO- 'https://duckduckgo.com/?q=what+is+my+ip' | grep -ow 'Your IP address is [0-9.]*[0-9]' | grep -ow '[0-9][0-9.]*' ) " = = " $INITIAL_IP " ] ] ; then echo "IP address is the same as the non VPN IP address" ; exit 1; fi
COPY --from= qmcgaw/dns-trustanchor /named.root /etc/unbound/root.hints
COPY --from= qmcgaw/dns-trustanchor /root.key /etc/unbound/root.key
RUN echo https://dl-3.alpinelinux.org/alpine/v3.8/main > /etc/apk/repositories && \
apk add -q --progress --no-cache --update openvpn wget ca-certificates iptables unbound && \
2018-04-15 14:52:27 -04:00
apk add -q --progress --no-cache --update --virtual= build-dependencies unzip && \
2018-04-15 14:15:58 -04:00
mkdir /openvpn-udp-normal /openvpn-udp-strong /openvpn-tcp-normal /openvpn-tcp-strong && \
wget -q https://www.privateinternetaccess.com/openvpn/openvpn.zip \
https://www.privateinternetaccess.com/openvpn/openvpn-strong.zip \
https://www.privateinternetaccess.com/openvpn/openvpn-tcp.zip \
https://www.privateinternetaccess.com/openvpn/openvpn-strong-tcp.zip && \
unzip -q openvpn.zip -d /openvpn-udp-normal && \
unzip -q openvpn-strong.zip -d /openvpn-udp-strong && \
unzip -q openvpn-tcp.zip -d /openvpn-tcp-normal && \
unzip -q openvpn-strong-tcp.zip -d /openvpn-tcp-strong && \
2018-03-31 20:33:45 -04:00
apk del -q --progress --purge build-dependencies && \
2018-09-21 11:39:00 +02:00
rm -rf /*.zip /var/cache/apk/* /etc/unbound/unbound.conf && \
2018-10-05 12:43:16 +02:00
chown unbound /etc/unbound/root.key && \
adduser -S nonrootuser
2018-09-21 11:28:23 +02:00
COPY unbound.conf /etc/unbound/unbound.conf
2018-10-28 14:08:14 +01:00
COPY --from= qmcgaw/malicious-hostnames /malicious-hostnames.bz2 /etc/unbound/malicious-hostnames.bz2
COPY --from= qmcgaw/malicious-ips /malicious-ips.bz2 /etc/unbound/malicious-ips.bz2
COPY entrypoint.sh /entrypoint.sh
RUN chmod 700 /entrypoint.sh
2018-10-04 22:24:43 +02:00
ENTRYPOINT /entrypoint.sh