From e90d33eca610e477317016131b4afe07cf515e04 Mon Sep 17 00:00:00 2001 From: Bharath Vignesh J K <52282402+RazCrimson@users.noreply.github.com> Date: Sun, 14 May 2023 00:39:40 +0530 Subject: [PATCH 1/3] fix: Dockerfile - missing `packaging` dependency cause: venv fallbacks on system packages that only exist during build time issue from: 4bf16e95 --- docker-files/alpine.Dockerfile | 7 ++++--- docker-files/ubuntu.Dockerfile | 5 +++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/docker-files/alpine.Dockerfile b/docker-files/alpine.Dockerfile index 768cf187..7a45633d 100644 --- a/docker-files/alpine.Dockerfile +++ b/docker-files/alpine.Dockerfile @@ -50,7 +50,7 @@ RUN apk add --no-cache \ libffi-dev \ openssl-dev -RUN python${PYTHON_VERSION} -m venv --system-site-packages --without-pip venv +RUN python${PYTHON_VERSION} -m venv --without-pip venv COPY requirements.txt docker-requirements.txt webui-requirements.txt optional-requirements.txt ./ @@ -58,7 +58,7 @@ COPY requirements.txt docker-requirements.txt webui-requirements.txt optional-re # BUILD: Install the minimal image deps FROM build as buildMinimal -RUN /venv/bin/python3 -m pip install --no-cache-dir \ +RUN python${PYTHON_VERSION} -m pip install --target=/venv/lib/python${PYTHON_VERSION}/site-packages \ # Note: requirements.txt is include by dep -r docker-requirements.txt \ -r webui-requirements.txt @@ -72,7 +72,8 @@ ARG CASS_DRIVER_NO_CYTHON=1 # See issue 2368 ARG CARGO_NET_GIT_FETCH_WITH_CLI=true -RUN /venv/bin/python3 -m pip install --no-cache-dir \ +RUN python${PYTHON_VERSION} -m pip install --target=/venv/lib/python${PYTHON_VERSION}/site-packages \ + # Note: requirements.txt is include by dep -r optional-requirements.txt ############################################################################## diff --git a/docker-files/ubuntu.Dockerfile b/docker-files/ubuntu.Dockerfile index 05186eaf..c776a840 100644 --- a/docker-files/ubuntu.Dockerfile +++ b/docker-files/ubuntu.Dockerfile @@ -57,7 +57,7 @@ COPY requirements.txt docker-requirements.txt webui-requirements.txt optional-re # BUILD: Install the minimal image deps FROM build as buildMinimal -RUN /venv/bin/python3 -m pip install --no-cache-dir \ +RUN python${PYTHON_VERSION} -m pip install --target=/venv/lib/python${PYTHON_VERSION}/site-packages \ # Note: requirements.txt is include by dep -r docker-requirements.txt \ -r webui-requirements.txt @@ -66,7 +66,8 @@ RUN /venv/bin/python3 -m pip install --no-cache-dir \ # BUILD: Install all the deps FROM build as buildFull -RUN /venv/bin/python3 -m pip install --no-cache-dir \ +RUN python${PYTHON_VERSION} -m pip install --target=/venv/lib/python${PYTHON_VERSION}/site-packages \ + # Note: requirements.txt is include by dep -r optional-requirements.txt ############################################################################## From ab016bc15e57b89f4821c29be7855ac49810ce69 Mon Sep 17 00:00:00 2001 From: Bharath Vignesh J K <52282402+RazCrimson@users.noreply.github.com> Date: Sun, 14 May 2023 00:43:45 +0530 Subject: [PATCH 2/3] chg: Dockerfile (ubuntu) - exclude pip in venv --- docker-files/ubuntu.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-files/ubuntu.Dockerfile b/docker-files/ubuntu.Dockerfile index c776a840..daf8e1ab 100644 --- a/docker-files/ubuntu.Dockerfile +++ b/docker-files/ubuntu.Dockerfile @@ -49,7 +49,7 @@ RUN apt-get update \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* -RUN python${PYTHON_VERSION} -m venv venv +RUN python${PYTHON_VERSION} -m venv --without-pip venv COPY requirements.txt docker-requirements.txt webui-requirements.txt optional-requirements.txt ./ From 31d6338b9de68e09b539187bfa0ebfa477d10209 Mon Sep 17 00:00:00 2001 From: Bharath Vignesh J K <52282402+RazCrimson@users.noreply.github.com> Date: Sun, 14 May 2023 01:01:56 +0530 Subject: [PATCH 3/3] chg: Dockerfile - fix shell-check complains double-quote possible glob expansions --- docker-files/alpine.Dockerfile | 4 ++-- docker-files/ubuntu.Dockerfile | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docker-files/alpine.Dockerfile b/docker-files/alpine.Dockerfile index 7a45633d..2497a438 100644 --- a/docker-files/alpine.Dockerfile +++ b/docker-files/alpine.Dockerfile @@ -58,7 +58,7 @@ COPY requirements.txt docker-requirements.txt webui-requirements.txt optional-re # BUILD: Install the minimal image deps FROM build as buildMinimal -RUN python${PYTHON_VERSION} -m pip install --target=/venv/lib/python${PYTHON_VERSION}/site-packages \ +RUN python${PYTHON_VERSION} -m pip install --target="/venv/lib/python${PYTHON_VERSION}/site-packages" \ # Note: requirements.txt is include by dep -r docker-requirements.txt \ -r webui-requirements.txt @@ -72,7 +72,7 @@ ARG CASS_DRIVER_NO_CYTHON=1 # See issue 2368 ARG CARGO_NET_GIT_FETCH_WITH_CLI=true -RUN python${PYTHON_VERSION} -m pip install --target=/venv/lib/python${PYTHON_VERSION}/site-packages \ +RUN python${PYTHON_VERSION} -m pip install --target="/venv/lib/python${PYTHON_VERSION}/site-packages" \ # Note: requirements.txt is include by dep -r optional-requirements.txt diff --git a/docker-files/ubuntu.Dockerfile b/docker-files/ubuntu.Dockerfile index daf8e1ab..33771452 100644 --- a/docker-files/ubuntu.Dockerfile +++ b/docker-files/ubuntu.Dockerfile @@ -57,7 +57,7 @@ COPY requirements.txt docker-requirements.txt webui-requirements.txt optional-re # BUILD: Install the minimal image deps FROM build as buildMinimal -RUN python${PYTHON_VERSION} -m pip install --target=/venv/lib/python${PYTHON_VERSION}/site-packages \ +RUN python${PYTHON_VERSION} -m pip install --target="/venv/lib/python${PYTHON_VERSION}/site-packages" \ # Note: requirements.txt is include by dep -r docker-requirements.txt \ -r webui-requirements.txt @@ -66,7 +66,7 @@ RUN python${PYTHON_VERSION} -m pip install --target=/venv/lib/python${PYTHON_VER # BUILD: Install all the deps FROM build as buildFull -RUN python${PYTHON_VERSION} -m pip install --target=/venv/lib/python${PYTHON_VERSION}/site-packages \ +RUN python${PYTHON_VERSION} -m pip install --target="/venv/lib/python${PYTHON_VERSION}/site-packages" \ # Note: requirements.txt is include by dep -r optional-requirements.txt