--- b/system/kubeapps/images/kubeapps-apis/Dockerfile
+++ a/system/kubeapps/images/kubeapps-apis/Dockerfile
@@ -3,9 +3,19 @@
 
 # syntax = docker/dockerfile:1
 
+FROM alpine as source
+ARG VERSION=v2.10.0
+RUN apk add --no-cache patch
+WORKDIR /source
+RUN wget -O- https://github.com/vmware-tanzu/kubeapps/archive/refs/tags/${VERSION}.tar.gz | tar xzf - --strip-components=1
+COPY labels.diff /patches/labels.diff
+COPY reconcile-strategy.diff /patches/reconcile-strategy.diff
+RUN patch -p1 < /patches/labels.diff
+RUN patch -p1 < /patches/reconcile-strategy.diff
+
 FROM bitnami/golang:1.22.2 as builder
 WORKDIR /go/src/github.com/vmware-tanzu/kubeapps
-COPY go.mod go.sum ./
+COPY --from=source /source/go.mod /source/go.sum ./
 ARG VERSION="devel"
 ARG TARGETARCH
 
@@ -40,8 +52,8 @@
 
 # We don't copy the pkg and cmd directories until here so the above layers can
 # be reused.
-COPY pkg pkg
-COPY cmd cmd
+COPY --from=source /source/pkg pkg
+COPY --from=source /source/cmd cmd
 
 RUN if [ ! -z ${lint:-} ]; then \
     # Run golangci-lint to detect issues
