From 80026806423eaeee4e5db49c4d103f1ce34f7b60 Mon Sep 17 00:00:00 2001 From: Minei3oat Date: Sun, 28 Sep 2025 22:24:46 +0200 Subject: [PATCH] Reduce docker image size by 35% Since docker caches each instruction as a layer, we have to clean cached packages at the end of each step for minimal image size. --- Dockerfile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index c4abc19..caf6fbe 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,8 +15,8 @@ RUN bun run build # Base fedora container FROM --platform=$TARGETARCH quay.io/fedora/fedora:42 AS base RUN dnf -y update && dnf install -y python3.13 libnetfilter_queue \ - libnfnetlink libmnl libcap-ng-utils nftables git \ - vectorscan libtins python3-nftables libpcap uv + libnfnetlink libmnl libcap-ng-utils nftables \ + vectorscan libtins python3-nftables libpcap && dnf clean all RUN mkdir -p /execute/modules WORKDIR /execute @@ -37,10 +37,10 @@ FROM --platform=$TARGETARCH base AS final ADD ./backend/requirements.txt /execute/requirements.txt COPY ./fgex-lib /execute/fgex-lib -RUN dnf install -y gcc-c++ python3.13-devel uv git &&\ +RUN dnf -y update && dnf install -y gcc-c++ python3.13-devel uv git &&\ uv pip install --no-cache --system ./fgex-lib &&\ uv pip install --no-cache --system -r /execute/requirements.txt &&\ - dnf remove -y gcc-c++ python3.13-devel uv git + uv cache clean && dnf remove -y gcc-c++ python3.13-devel uv git && dnf clean all COPY ./backend/ /execute/ COPY --from=compiler /execute/cppregex /execute/cpproxy /execute/modules/