镜像构建历史
# 2026-05-09 03:15:39 0.00B 设置默认要执行的命令
CMD ["haproxy" "-f" "/usr/local/etc/haproxy/haproxy.cfg"]
# 2026-05-09 03:15:39 0.00B 设置工作目录为/var/lib/haproxy
WORKDIR /var/lib/haproxy
# 2026-05-09 03:15:39 0.00B 指定运行容器时使用的用户
USER haproxy
# 2026-05-09 03:15:39 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["docker-entrypoint.sh"]
# 2026-05-09 03:15:39 417.00B 复制新文件或目录到容器中
COPY docker-entrypoint.sh /usr/local/bin/ # buildkit
# 2026-05-09 03:15:39 0.00B 设置停止容器时发送的系统调用信号
STOPSIGNAL SIGUSR1
# 2026-05-09 03:15:39 27.98MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get install --update -y --no-install-recommends gcc libc6-dev liblua5.4-dev libpcre2-dev libssl-dev make wget ; 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.4 USE_OPENSSL=1 USE_PCRE2=1 USE_PCRE2_JIT=1 USE_PROMEX=1 USE_PTHREAD_EMULATION=1 USE_QUIC=1 '; 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; apt-get dist-clean; haproxy -v # buildkit
# 2026-05-09 03:15:39 0.00B 设置环境变量 HAPROXY_SHA256
ENV HAPROXY_SHA256=da8c1486d418e11188febbbb90a3a64690ed9e5c882c711b688b82fd4907143c
# 2026-05-09 03:15:39 0.00B 设置环境变量 HAPROXY_URL
ENV HAPROXY_URL=https://www.haproxy.org/download/3.2/src/haproxy-3.2.18.tar.gz
# 2026-05-09 03:15:39 0.00B 设置环境变量 HAPROXY_VERSION
ENV HAPROXY_VERSION=3.2.18
# 2026-05-09 03:14:58 4.31KB 执行命令并创建新的镜像层
RUN /bin/sh -c 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 # buildkit
# 2026-05-09 03:14:58 4.75MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; apt-get install --update -y --no-install-recommends ca-certificates socat ; apt-get dist-clean # buildkit
# 2026-05-05 08:00:00 100.50MB
# debian.sh --arch 'arm64' out/ 'trixie' '@1777939200'
镜像信息
{
"Id": "sha256:2e5733a4af8b0ddf5ddb9f84f270b2e7c24c16b6a6e54fbfe7fb99b978489545",
"RepoTags": [
"haproxy:3.2.18",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/haproxy:3.2.18-linuxarm64"
],
"RepoDigests": [
"haproxy@sha256:e11ea2c46f7e235323618fdb656327449187a5ea59c37996224313628f4466ef",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/haproxy@sha256:a6ffb820fc810c5e0ed4072c583bccb9c04a08a4da2c4b76b13d745786a07a35"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2026-05-08T19:15:39.70060092Z",
"Container": "",
"ContainerConfig": null,
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "haproxy",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"HAPROXY_VERSION=3.2.18",
"HAPROXY_URL=https://www.haproxy.org/download/3.2/src/haproxy-3.2.18.tar.gz",
"HAPROXY_SHA256=da8c1486d418e11188febbbb90a3a64690ed9e5c882c711b688b82fd4907143c"
],
"Cmd": [
"haproxy",
"-f",
"/usr/local/etc/haproxy/haproxy.cfg"
],
"Image": "",
"Volumes": null,
"WorkingDir": "/var/lib/haproxy",
"Entrypoint": [
"docker-entrypoint.sh"
],
"OnBuild": null,
"Labels": null,
"StopSignal": "SIGUSR1"
},
"Architecture": "arm64",
"Variant": "v8",
"Os": "linux",
"Size": 133231048,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/fc199494501313934775f318580033cf9af1ee24f2dc8c3e95314e188fcd5d60/diff:/var/lib/docker/overlay2/6670d12fa47d18a18611153b9ba673bc7b68716edff8ab9128c3ebba3147c78f/diff:/var/lib/docker/overlay2/83a8fe4dfb9ed01613661f7add1c8d2ea189371d727c1eeb65b8c8dfe6da99c1/diff:/var/lib/docker/overlay2/717a17cbdc91d5a58ba6e5530a81614dc7262cd59e2884fbf32223c0c582261b/diff:/var/lib/docker/overlay2/82aa051c299bd9c4bef2dc3c6b0923388112e9c8dff4c7bcdc001df2901af62f/diff",
"MergedDir": "/var/lib/docker/overlay2/7720e7c0506a5dd41faa2533820dbdc21c2ec61e58dd5dab8bb0ef4ebe6f3b27/merged",
"UpperDir": "/var/lib/docker/overlay2/7720e7c0506a5dd41faa2533820dbdc21c2ec61e58dd5dab8bb0ef4ebe6f3b27/diff",
"WorkDir": "/var/lib/docker/overlay2/7720e7c0506a5dd41faa2533820dbdc21c2ec61e58dd5dab8bb0ef4ebe6f3b27/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:3be22cd0fa54745db14ce1e1deb645d45e7b3e81fee5bc65421c2e64282266dd",
"sha256:bf77afc07a1c22d944b494905918d7f5fe371c8b435dfe23acc65b411bf352bb",
"sha256:3bd90dc2e1d29453152fd2f544752b573a475defcf296ff2c270acc5c5856087",
"sha256:6bc6917c7bf834a66d6f2cea90b1f85d07b474e9a67a01e123f34b8ca0f9cb13",
"sha256:236e58a9f9b4624109fd476647eb01b9a89fa9a6950b87c66cda0363ae352b26",
"sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef"
]
},
"Metadata": {
"LastTagTime": "2026-05-11T20:26:14.644295825+08:00"
}
}