From c8f3bf844475d2f217b0b13147d5fad3ce7c9842 Mon Sep 17 00:00:00 2001 From: fcdm <128653800+fcdm@users.noreply.github.com> Date: Fri, 16 Feb 2024 15:31:28 +0000 Subject: [PATCH] fin layer --- Dockerfile.compute-node-combined | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/Dockerfile.compute-node-combined b/Dockerfile.compute-node-combined index 097a55cac3..aa1c438774 100644 --- a/Dockerfile.compute-node-combined +++ b/Dockerfile.compute-node-combined @@ -93,6 +93,27 @@ USER nonroot COPY --chown=nonroot . . RUN cd compute_tools && cargo build --locked --profile release-line-debug-size-lto +######################################################################################### +# +# Clean up postgres folder before inclusion +# +######################################################################################### +FROM pg-build AS postgres-cleanup-layer +# COPY --from=neon-pg-ext-build /usr/local/pgsql /usr/local/pgsql + +RUN for pg_version in v14 v15 v16; do \ + prefix="/usr/local/pgsql-${pg_version}"; \ + # Remove binaries from /bin/ that we won't use (or would manually copy & install otherwise) + cd "${prefix}/bin" && rm ecpg raster2pgsql shp2pgsql pgtopo_export pgtopo_import pgsql2shp; \ + cd ..; \ + # Remove headers that we won't need anymore - we've completed installation of all extensions + rm -r "${prefix}/include"; \ + # Remove static postgresql libraries - all compilation is finished, so we + # can now remove these files - they must be included in other binaries by now + # if they were to be used by other libraries. + rm ${prefix}/lib/lib*.a; \ +done + ######################################################################################### # # Final layer @@ -112,7 +133,9 @@ RUN mkdir /var/db && useradd -m -d /var/db/postgres postgres && \ # create folder for file cache mkdir -p -m 777 /neon/cache -COPY --from=postgres-cleanup-layer --chown=postgres /usr/local/pgsql /usr/local +COPY --from=postgres-cleanup-layer --chown=postgres /usr/local/pgsql-v14 /usr/local +COPY --from=postgres-cleanup-layer --chown=postgres /usr/local/pgsql-v15 /usr/local +COPY --from=postgres-cleanup-layer --chown=postgres /usr/local/pgsql-v16 /usr/local COPY --from=compute-tools --chown=postgres /home/nonroot/target/release-line-debug-size-lto/compute_ctl /usr/local/bin/compute_ctl # Install: