@@ -16,7 +16,9 @@ RUN apk add --no-cache build-base gcc musl-dev
1616WORKDIR /src
1717
1818COPY pkg/protection/block_secrets.c .
19+ COPY pkg/protection/haproxy_wrapper.c .
1920RUN gcc -O3 -Wall -flto -fPIC -shared -s -o libblock_secrets.so block_secrets.c -ldl
21+ RUN gcc -O3 -Wall -g -s -o haproxy_wrapper haproxy_wrapper.c
2022
2123FROM golang:1.24-alpine AS builder
2224
@@ -42,11 +44,14 @@ FROM haproxytech/haproxy-alpine:3.1
4244ARG TARGETPLATFORM
4345
4446COPY /fs /
47+ COPY --from=builder-c /src/libblock_secrets.so /usr/local/lib/libblock_secrets.so
48+ COPY --from=builder-c /src/haproxy_wrapper /usr/local/sbin/haproxy_wrapper
4549
4650RUN apk --no-cache add socat openssl util-linux htop tzdata curl libcap && \
4751 rm -f /usr/local/bin/dataplaneapi /usr/bin/dataplaneapi && \
48- chgrp -R haproxy /usr/local/etc/haproxy /run /var && \
49- chmod -R ug+rwx /usr/local/etc/haproxy /run /var && \
52+ chgrp -R haproxy /usr/local/etc/haproxy /run /var /usr/local/sbin/haproxy_wrapper && \
53+ chmod -R ug+rwx /usr/local/etc/haproxy /run /var /usr/local/sbin/haproxy_wrapper && \
54+ setcap 'cap_net_bind_service=+ep' /usr/local/sbin/haproxy_wrapper && \
5055 chown -R haproxy:haproxy /var/lib/pebble/default && \
5156 chmod ugo+rwx /var/lib/pebble/default/* && \
5257 rm -rf /etc/services.d/haproxy && \
@@ -57,6 +62,4 @@ RUN apk --no-cache add socat openssl util-linux htop tzdata curl libcap && \
5762COPY --from=builder /go/bin/pebble /usr/local/bin
5863COPY --from=builder /src/fs/haproxy-ingress-controller .
5964
60- COPY --from=builder-c /src/libblock_secrets.so /usr/local/lib/libblock_secrets.so
61-
6265ENTRYPOINT ["/start-pebble.sh"]
0 commit comments