diff --git a/2.7/Dockerfile b/2.7/Dockerfile deleted file mode 100644 index dd8ba57..0000000 --- a/2.7/Dockerfile +++ /dev/null @@ -1,111 +0,0 @@ -# -# NOTE: THIS DOCKERFILE IS GENERATED VIA "apply-templates.sh" -# -# PLEASE DO NOT EDIT IT DIRECTLY. -# - -FROM debian:bookworm-slim - -# runtime dependencies -RUN set -eux; \ - apt-get update; \ - apt-get install -y --no-install-recommends \ -# @system-ca: https://github.com/docker-library/haproxy/pull/216 - ca-certificates \ - ; \ - rm -rf /var/lib/apt/lists/* - -# roughly, https://salsa.debian.org/haproxy-team/haproxy/-/blob/732b97ae286906dea19ab5744cf9cf97c364ac1d/debian/haproxy.postinst#L5-6 -RUN set -eux; \ - groupadd --gid 99 --system haproxy; \ - useradd \ - --gid haproxy \ - --home-dir /var/lib/haproxy \ - --no-create-home \ - --system \ - --uid 99 \ - haproxy \ - ; \ - mkdir /var/lib/haproxy; \ - chown haproxy:haproxy /var/lib/haproxy - -ENV HAPROXY_VERSION 2.7.12 -ENV HAPROXY_URL https://www.haproxy.org/download/2.7/src/haproxy-2.7.12.tar.gz -ENV HAPROXY_SHA256 471d42524049b37b5fc79093ac26911a838c2c67a18bd2f8d01efd48a83a362c - -# see https://sources.debian.net/src/haproxy/jessie/debian/rules/ for some helpful navigation of the possible "make" arguments -RUN set -eux; \ - \ - savedAptMark="$(apt-mark showmanual)"; \ - apt-get update && apt-get install -y --no-install-recommends \ - gcc \ - libc6-dev \ - liblua5.3-dev \ - libpcre2-dev \ - libssl-dev \ - make \ - wget \ - ; \ - rm -rf /var/lib/apt/lists/*; \ - \ - wget -O haproxy.tar.gz "$HAPROXY_URL"; \ - echo "$HAPROXY_SHA256 *haproxy.tar.gz" | sha256sum -c; \ - mkdir -p /usr/src/haproxy; \ - tar -xzf haproxy.tar.gz -C /usr/src/haproxy --strip-components=1; \ - rm haproxy.tar.gz; \ - \ - makeOpts=' \ - TARGET=linux-glibc \ - USE_GETADDRINFO=1 \ - USE_LUA=1 LUA_INC=/usr/include/lua5.3 \ - USE_OPENSSL=1 \ - USE_PCRE2=1 USE_PCRE2_JIT=1 \ - USE_PROMEX=1 \ - \ - EXTRA_OBJS=" \ - " \ - '; \ -# https://salsa.debian.org/haproxy-team/haproxy/-/commit/53988af3d006ebcbf2c941e34121859fd6379c70 - dpkgArch="$(dpkg --print-architecture)"; \ - case "$dpkgArch" in \ - armel) makeOpts="$makeOpts ADDLIB=-latomic" ;; \ - esac; \ - \ - nproc="$(nproc)"; \ - eval "make -C /usr/src/haproxy -j '$nproc' all $makeOpts"; \ - eval "make -C /usr/src/haproxy install-bin $makeOpts"; \ - \ - mkdir -p /usr/local/etc/haproxy; \ - cp -R /usr/src/haproxy/examples/errorfiles /usr/local/etc/haproxy/errors; \ - rm -rf /usr/src/haproxy; \ - \ - apt-mark auto '.*' > /dev/null; \ - [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; \ - find /usr/local -type f -executable -exec ldd '{}' ';' \ - | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' \ - | sort -u \ - | xargs -r dpkg-query --search \ - | cut -d: -f1 \ - | sort -u \ - | xargs -r apt-mark manual \ - ; \ - apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \ - \ -# smoke test - haproxy -v - -# https://www.haproxy.org/download/1.8/doc/management.txt -# "4. Stopping and restarting HAProxy" -# "when the SIGTERM signal is sent to the haproxy process, it immediately quits and all established connections are closed" -# "graceful stop is triggered when the SIGUSR1 signal is sent to the haproxy process" -STOPSIGNAL SIGUSR1 - -COPY docker-entrypoint.sh /usr/local/bin/ -ENTRYPOINT ["docker-entrypoint.sh"] - -USER haproxy - -# https://github.com/docker-library/haproxy/issues/200 -WORKDIR /var/lib/haproxy - -CMD ["haproxy", "-f", "/usr/local/etc/haproxy/haproxy.cfg"] diff --git a/2.7/alpine/Dockerfile b/2.7/alpine/Dockerfile deleted file mode 100644 index 7dd6a5b..0000000 --- a/2.7/alpine/Dockerfile +++ /dev/null @@ -1,103 +0,0 @@ -# -# NOTE: THIS DOCKERFILE IS GENERATED VIA "apply-templates.sh" -# -# PLEASE DO NOT EDIT IT DIRECTLY. -# - -FROM alpine:3.19 - -# runtime dependencies -RUN set -eux; \ - apk add --no-cache \ -# @system-ca: https://github.com/docker-library/haproxy/pull/216 - ca-certificates \ - ; - -# roughly, https://git.alpinelinux.org/aports/tree/main/haproxy/haproxy.pre-install?h=3.12-stable -RUN set -eux; \ - addgroup --gid 99 --system haproxy; \ - adduser \ - --disabled-password \ - --home /var/lib/haproxy \ - --ingroup haproxy \ - --no-create-home \ - --system \ - --uid 99 \ - haproxy \ - ; \ - mkdir /var/lib/haproxy; \ - chown haproxy:haproxy /var/lib/haproxy - -ENV HAPROXY_VERSION 2.7.12 -ENV HAPROXY_URL https://www.haproxy.org/download/2.7/src/haproxy-2.7.12.tar.gz -ENV HAPROXY_SHA256 471d42524049b37b5fc79093ac26911a838c2c67a18bd2f8d01efd48a83a362c - -# see https://sources.debian.net/src/haproxy/jessie/debian/rules/ for some helpful navigation of the possible "make" arguments -RUN set -eux; \ - \ - apk add --no-cache --virtual .build-deps \ - gcc \ - libc-dev \ - linux-headers \ - lua5.3-dev \ - make \ - openssl \ - openssl-dev \ - pcre2-dev \ - readline-dev \ - tar \ - ; \ - \ - wget -O haproxy.tar.gz "$HAPROXY_URL"; \ - echo "$HAPROXY_SHA256 *haproxy.tar.gz" | sha256sum -c; \ - mkdir -p /usr/src/haproxy; \ - tar -xzf haproxy.tar.gz -C /usr/src/haproxy --strip-components=1; \ - rm haproxy.tar.gz; \ - \ - makeOpts=' \ - TARGET=linux-musl \ - USE_GETADDRINFO=1 \ - USE_LUA=1 LUA_INC=/usr/include/lua5.3 LUA_LIB=/usr/lib/lua5.3 \ - USE_OPENSSL=1 \ - USE_PCRE2=1 USE_PCRE2_JIT=1 \ - USE_PROMEX=1 \ - \ - EXTRA_OBJS=" \ - " \ - '; \ - \ - nproc="$(getconf _NPROCESSORS_ONLN)"; \ - eval "make -C /usr/src/haproxy -j '$nproc' all $makeOpts"; \ - eval "make -C /usr/src/haproxy install-bin $makeOpts"; \ - \ - mkdir -p /usr/local/etc/haproxy; \ - cp -R /usr/src/haproxy/examples/errorfiles /usr/local/etc/haproxy/errors; \ - rm -rf /usr/src/haproxy; \ - \ - runDeps="$( \ - scanelf --needed --nobanner --format '%n#p' --recursive /usr/local \ - | tr ',' '\n' \ - | sort -u \ - | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \ - )"; \ - apk add --no-network --virtual .haproxy-rundeps $runDeps; \ - apk del --no-network .build-deps; \ - \ -# smoke test - haproxy -v - -# https://www.haproxy.org/download/1.8/doc/management.txt -# "4. Stopping and restarting HAProxy" -# "when the SIGTERM signal is sent to the haproxy process, it immediately quits and all established connections are closed" -# "graceful stop is triggered when the SIGUSR1 signal is sent to the haproxy process" -STOPSIGNAL SIGUSR1 - -COPY docker-entrypoint.sh /usr/local/bin/ -ENTRYPOINT ["docker-entrypoint.sh"] - -USER haproxy - -# https://github.com/docker-library/haproxy/issues/200 -WORKDIR /var/lib/haproxy - -CMD ["haproxy", "-f", "/usr/local/etc/haproxy/haproxy.cfg"] diff --git a/2.7/alpine/docker-entrypoint.sh b/2.7/alpine/docker-entrypoint.sh deleted file mode 100755 index 8b2093b..0000000 --- a/2.7/alpine/docker-entrypoint.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh -set -e - -# first arg is `-f` or `--some-option` -if [ "${1#-}" != "$1" ]; then - set -- haproxy "$@" -fi - -if [ "$1" = 'haproxy' ]; then - shift # "haproxy" - # if the user wants "haproxy", let's add a couple useful flags - # -W -- "master-worker mode" (similar to the old "haproxy-systemd-wrapper"; allows for reload via "SIGUSR2") - # -db -- disables background mode - set -- haproxy -W -db "$@" -fi - -exec "$@" diff --git a/2.7/docker-entrypoint.sh b/2.7/docker-entrypoint.sh deleted file mode 100755 index 8b2093b..0000000 --- a/2.7/docker-entrypoint.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh -set -e - -# first arg is `-f` or `--some-option` -if [ "${1#-}" != "$1" ]; then - set -- haproxy "$@" -fi - -if [ "$1" = 'haproxy' ]; then - shift # "haproxy" - # if the user wants "haproxy", let's add a couple useful flags - # -W -- "master-worker mode" (similar to the old "haproxy-systemd-wrapper"; allows for reload via "SIGUSR2") - # -db -- disables background mode - set -- haproxy -W -db "$@" -fi - -exec "$@" diff --git a/Dockerfile.template b/Dockerfile.template index f7e9eba..90939b3 100644 --- a/Dockerfile.template +++ b/Dockerfile.template @@ -59,7 +59,7 @@ ENV HAPROXY_SHA256 {{ .sha256 }} # Since 5.4 is supported on haproxy, better use it now, but only for # newer versions since there could be some minor incompatibilities # for existing scripts: https://www.lua.org/manual/5.4/manual.html#8 - if ([ "2.0", "2.2", "2.4", "2.6", "2.7", "2.8" ] | index(env.version)) then + if ([ "2.0", "2.2", "2.4", "2.6", "2.8" ] | index(env.version)) then "5.3" else "5.4" diff --git a/versions.json b/versions.json index 59dc2da..d92a52f 100644 --- a/versions.json +++ b/versions.json @@ -27,13 +27,6 @@ "url": "https://www.haproxy.org/download/2.6/src/haproxy-2.6.17.tar.gz", "version": "2.6.17" }, - "2.7": { - "alpine": "3.19", - "debian": "bookworm-slim", - "sha256": "471d42524049b37b5fc79093ac26911a838c2c67a18bd2f8d01efd48a83a362c", - "url": "https://www.haproxy.org/download/2.7/src/haproxy-2.7.12.tar.gz", - "version": "2.7.12" - }, "2.8": { "alpine": "3.19", "debian": "bookworm-slim",