@@ -15,6 +15,9 @@ RUN set -ex; \
1515 chown privoxy:privoxy /var/lib/privoxy/;
1616
1717ARG PRIVOXY_VERSION=4.0.0
18+ ARG PRIVOXY_CONFIG_OPTIONS="--disable-toggle --disable-editor --disable-force --with-openssl --with-brotli"
19+ ARG PRIVOXY_BUILD_EXTRA="openssl-dev brotli-dev"
20+ ARG SYSTEM_EXTRA_PKGS="openssl brotli net-tools"
1821
1922# Build Privoxy
2023RUN set -eux; \
@@ -27,15 +30,14 @@ RUN set -eux; \
2730 libc-dev \
2831 zlib-dev \
2932 pcre2-dev \
30- openssl-dev \
31- brotli-dev; \
33+ $PRIVOXY_BUILD_EXTRA; \
3234 mkdir -p /usr/local/src/privoxy-${PRIVOXY_VERSION}-stable; \
3335 wget -O /var/lib/privoxy/privoxy-src.tar.gz https://sourceforge.net/projects/ijbswa/files/Sources/${PRIVOXY_VERSION}%20%28stable%29/privoxy-${PRIVOXY_VERSION}-stable-src.tar.gz/download; \
3436 tar -zxvf /var/lib/privoxy/privoxy-src.tar.gz -C /usr/local/src/; \
3537 cd /usr/local/src/privoxy-${PRIVOXY_VERSION}-stable; \
3638 autoheader; \
3739 autoconf; \
38- ./configure --disable-toggle --disable-editor --disable-force --with-openssl --with-brotli ; \
40+ ./configure $PRIVOXY_CONFIG_OPTIONS ; \
3941 make; \
4042 make -s install USER=privoxy GROUP=privoxy; \
4143 chown -R privoxy:privoxy /usr/local/etc/privoxy/; \
@@ -45,14 +47,11 @@ RUN set -eux; \
4547# Add system tools
4648RUN set -eux; \
4749 apk add --no-cache --virtual runtime-deps \
48- openssl \
4950 python3 \
5051 pcre2 \
51- brotli \
52- supervisor \
5352 bash \
5453 sed \
55- net-tools ;
54+ $SYSTEM_EXTRA_PKGS ;
5655
5756# Enable Privoxy HTTPS inspection
5857RUN set -ex; \
@@ -61,7 +60,6 @@ RUN set -ex; \
6160
6261# Copy project scripts/configs
6362COPY data/rules/ /usr/local/etc/privoxy/privman-rules/
64- COPY data/supervisord.conf /usr/local/etc/privoxy/
6563COPY data/config /usr/local/etc/privoxy/
6664COPY data/privoxy-blocklist.conf /var/lib/privoxy/
6765RUN set -eux; \
@@ -84,11 +82,11 @@ RUN set -ex; \
8482 sed -i 's/\r $//' /var/lib/privoxy/privman.py /var/lib/privoxy/privoxy-blocklist.sh; \
8583 head -1 /var/lib/privoxy/privman.py | grep -q '^#!' || \
8684 sed -i '1i #!/usr/bin/env python3' /var/lib/privoxy/privman.py; \
87- mkdir -p /usr/local/etc/privoxy/CA /usr/local/etc/privoxy/certs /usr/local/etc/privoxy/privman-rules; \
88- chown -R privoxy:privoxy /usr/local/etc/privoxy/config /usr/local/etc/privoxy/CA /usr/local/etc/privoxy/certs /usr/local/etc/privoxy/privman-rules /var/lib/privoxy/privoxy-blocklist.conf; \
85+ mkdir -p /var/log/privoxy / usr/local/etc/privoxy/CA /usr/local/etc/privoxy/certs /usr/local/etc/privoxy/privman-rules; \
86+ chown -R privoxy:privoxy /var/log/privoxy/ / usr/local/etc/privoxy/config /usr/local/etc/privoxy/CA /usr/local/etc/privoxy/certs /usr/local/etc/privoxy/privman-rules /var/lib/privoxy/privoxy-blocklist.conf; \
8987 chmod +x /var/lib/privoxy/privman.py; \
90- ln -sf /var/lib/privoxy/privman.py /usr/local/bin /privman; \
91- ln -sf /var/lib/privoxy/privoxy-blocklist.sh /usr/local/bin /privoxy-blocklist;
88+ ln -sf /var/lib/privoxy/privman.py /usr/local/sbin /privman; \
89+ ln -sf /var/lib/privoxy/privoxy-blocklist.sh /usr/local/sbin /privoxy-blocklist;
9290
9391ENV ADBLOCK_URLS="" \
9492 ADBLOCK_FILTERS=""
@@ -103,4 +101,4 @@ EXPOSE 8118/tcp
103101USER privoxy
104102
105103WORKDIR /usr/local/etc/privoxy/
106- CMD ["/usr/bin/supervisord " , "-c" , "supervisord.conf " ]
104+ CMD ["/usr/local/sbin/privoxy " , "--no-daemon " ]
0 commit comments