Files
ja4sentinel/packaging/Dockerfile.rpm
Jacquin Antoine 410467f099
Some checks failed
Build DEB Package / Build DEB Package (Debian/Ubuntu) (push) Has been cancelled
Build RPM Package / Build RPM Package (Rocky Linux) (push) Has been cancelled
feat: ajouter pipeline CI complet (tests, build, packages)
- Ajout des cibles make ci, ci-test, ci-build, ci-package, ci-package-test
- Correction des chemins de sortie des packages (build/deb, build/rpm)
- Build RPM sur Rocky Linux 9 pour dépendances correctes (libpcap.so.1)
- Fix tests RPM (command -v au lieu de which, fallback libpcap)
- Tous les tests passent (11/11 DEB, 11/11 RPM)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-25 22:43:53 +01:00

44 lines
1.0 KiB
Docker

# Dockerfile for building RPM packages for Rocky Linux
# Use Rocky Linux 9 as the build environment for correct RPM dependencies
FROM rockylinux:9 AS builder
# Install Go and RPM build tools
# CRB repository needed for some development packages
RUN dnf install -y epel-release && \
dnf install -y \
golang \
rpm-build \
rpmdevtools \
gcc \
make \
git \
&& dnf install -y --enablerepo=crb libpcap-devel \
&& dnf clean all
# Verify Go version
RUN go version
WORKDIR /app
# Copy source code
COPY . .
# Build binary
ARG VERSION=1.0.0
RUN mkdir -p dist && \
CGO_ENABLED=1 GOOS=linux GOARCH=amd64 \
go build -buildvcs=false -o dist/ja4sentinel-linux-amd64 ./cmd/ja4sentinel
# Build RPM for Rocky Linux (RHEL compatible)
ARG ARCH=x86_64
RUN mkdir -p /app/packages && \
./packaging/build-rpm.sh "${VERSION}" "${ARCH}" "rocky" && \
cp /app/build/rpm/*.rpm /app/packages/
# Final stage - minimal image with just the RPM
FROM alpine:latest
COPY --from=builder /app/packages/ /packages/
CMD ["ls", "-la", "/packages/"]