-
Notifications
You must be signed in to change notification settings - Fork 32
/
Dockerfile
36 lines (31 loc) · 1.38 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
FROM debian:bullseye-slim
ENV VARNISH_SIZE 100M
RUN set -e; \
BASE_PKGS="curl dpkg-dev debhelper devscripts equivs git pkg-config apt-utils fakeroot"; \
export DEBIAN_FRONTEND=noninteractive; \
export DEBCONF_NONINTERACTIVE_SEEN=true; \
tmpdir="$(mktemp -d)"; \
cd "$tmpdir"; \
apt-get update; \
apt-get install -y $BASE_PKGS; \
git clone https://github.com/varnishcache/pkg-varnish-cache.git; \
cd pkg-varnish-cache; \
git checkout d3e6a3fad7d4c2ac781ada92dcc246e7eef9d129; \
rm -rf .git; \
curl -f https://varnish-cache.org/downloads/varnish-7.0.2.tgz -o $tmpdir/orig.tgz; \
echo "5eb08345c95152639266b7ad241185188477f8fd04e88e4dfda1579719a1a413790a0616f25d70994f6d3b8f7640ea80926ece7c547555dad856fd9f6960c9a3 $tmpdir/orig.tgz" | sha512sum -c -; \
tar xavf $tmpdir/orig.tgz --strip 1; \
sed -i -e "s|@VERSION@|7.0.2|" "debian/changelog"; \
mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --yes" debian/control; \
sed -i '' debian/varnish*; \
dpkg-buildpackage -us -uc -j"$(nproc)"; \
apt-get -y install ../*.deb; \
apt-get -y purge --auto-remove varnish-build-deps $BASE_PKGS; \
mkdir /pkgs; \
mv ../*dev*.deb /pkgs; \
rm -rf /var/lib/apt/lists/* "$tmpdir";
WORKDIR /etc/varnish
COPY scripts/ /usr/local/bin/
ENTRYPOINT ["/usr/local/bin/docker-varnish-entrypoint"]
EXPOSE 80 8443
CMD []