From 730198a6997991a853a83f771eab9b803909ee8a Mon Sep 17 00:00:00 2001 From: "Peter A. Jonsson" Date: Mon, 2 Dec 2024 17:33:34 +0100 Subject: [PATCH 1/3] Update for Ubuntu 24.04 Switch the Dockerfile to using the ubuntu user/group which is required for building after https://github.com/davidfrantz/base_image/pull/4 has been merged. Also remove the WORKDIR since that is the last thing set by the Dockerfile for davidfrantz/base. Include paths for some dependencies have changed, so update the Makefile with those paths as well. --- Dockerfile | 8 +++----- Makefile | 6 ++++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Dockerfile b/Dockerfile index eb656677..46f67550 100755 --- a/Dockerfile +++ b/Dockerfile @@ -39,7 +39,7 @@ ARG debug=disable # Copy src to SOURCE_DIR RUN mkdir -p $SOURCE_DIR WORKDIR $SOURCE_DIR -COPY --chown=docker:docker . . +COPY --chown=ubuntu:ubuntu . . # Build, install, check FORCE RUN echo "building FORCE" && \ @@ -56,10 +56,8 @@ RUN echo "building FORCE" && \ FROM davidfrantz/base:latest as force -COPY --chown=docker:docker --from=force_builder $HOME/bin $HOME/bin -COPY --chown=docker:docker --from=force_builder $HOME/force-udf $HOME/udf - -WORKDIR /home/docker +COPY --chown=ubuntu:ubuntu --from=force_builder $HOME/bin $HOME/bin +COPY --chown=ubuntu:ubuntu --from=force_builder $HOME/force-udf $HOME/udf ENV R_HOME=/usr/lib/R ENV LD_LIBRARY_PATH=$R_HOME/lib diff --git a/Makefile b/Makefile index 751839a7..fe299097 100755 --- a/Makefile +++ b/Makefile @@ -40,11 +40,13 @@ CURL_INCLUDES = -I/usr/include/curl -I/usr/include/x86_64-linux-gnu/curl CURL_LIBS = -L/usr/lib/x86_64-linux-gnu -lcurl CURL_FLAGS = -Wl,-rpath=/usr/lib/x86_64-linux-gnu -OPENCV_INCLUDES = -I/usr/local/include/opencv4 +OPENCV_INCLUDES = -I/usr/include/opencv4 OPENCV_LIBS = -L/usr/local/lib -lopencv_core -lopencv_ml -lopencv_imgproc OPENCV_FLAGS = -Wl,-rpath=/usr/local/lib -PYTHON_INCLUDES = $(shell python3-config --includes) +NUMPY_INCLUDE_PATH := $(shell python3 -c "import numpy; print(numpy.get_include())") + +PYTHON_INCLUDES = $(shell python3-config --includes) -I$(NUMPY_INCLUDE_PATH) PYTHON_LIBS = $(shell (python3-config --ldflags --libs --embed || python3-config --ldflags --libs) | tr -d '\n') RSTATS_INCLUDES = $(shell R CMD config --cppflags) From 4efc683eef9b05e33bbdc75bfadf6cdd2fcb5cdb Mon Sep 17 00:00:00 2001 From: "Peter A. Jonsson" Date: Mon, 23 Dec 2024 12:05:43 +0100 Subject: [PATCH 2/3] Dockerfile: set FROM to base:ubuntu24 --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 46f67550..dda9af12 100755 --- a/Dockerfile +++ b/Dockerfile @@ -27,7 +27,7 @@ # base installation to speed up build process # https://github.com/davidfrantz/base_image -FROM davidfrantz/base:latest as force_builder +FROM davidfrantz/base:ubuntu24 AS force_builder # Environment variables ENV SOURCE_DIR $HOME/src/force @@ -54,7 +54,7 @@ RUN echo "building FORCE" && \ # clone FORCE UDF git clone https://github.com/davidfrantz/force-udf.git -FROM davidfrantz/base:latest as force +FROM davidfrantz/base:ubuntu24 AS force COPY --chown=ubuntu:ubuntu --from=force_builder $HOME/bin $HOME/bin COPY --chown=ubuntu:ubuntu --from=force_builder $HOME/force-udf $HOME/udf From 0aed0fe1388f21259b4cdbf272b7ed0ef4d14fbd Mon Sep 17 00:00:00 2001 From: "Peter A. Jonsson" Date: Mon, 23 Dec 2024 12:41:58 +0100 Subject: [PATCH 3/3] Dockerfile: workaround CI test failure --- Dockerfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Dockerfile b/Dockerfile index dda9af12..174bd057 100755 --- a/Dockerfile +++ b/Dockerfile @@ -56,6 +56,9 @@ RUN echo "building FORCE" && \ FROM davidfrantz/base:ubuntu24 AS force +# FIXME: workaround to make CI tests (that run as uid < 1000) pass. +RUN chmod 777 /home/ubuntu + COPY --chown=ubuntu:ubuntu --from=force_builder $HOME/bin $HOME/bin COPY --chown=ubuntu:ubuntu --from=force_builder $HOME/force-udf $HOME/udf