From fd21fd8cc96ae28e00e434cb3b4289e1ee815565 Mon Sep 17 00:00:00 2001 From: Erik Fasterius Date: Thu, 17 Oct 2024 12:38:55 +0200 Subject: [PATCH] Try adding Ubuntu stage to publish Docker image --- env/publish/Dockerfile | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/env/publish/Dockerfile b/env/publish/Dockerfile index 629d4cde..3ff95f6d 100644 --- a/env/publish/Dockerfile +++ b/env/publish/Dockerfile @@ -9,7 +9,6 @@ RUN apt-get update \ ca-certificates \ curl \ && apt-get clean - RUN mkdir -p /opt/quarto \ && curl -o quarto.tar.gz -L "https://github.com/quarto-dev/quarto-cli/releases/download/v${QUARTO_VERSION}/quarto-${QUARTO_VERSION}-linux-${TARGETARCH}.tar.gz" \ && tar -zxvf quarto.tar.gz -C /opt/quarto/ --strip-components=1 \ @@ -18,22 +17,27 @@ RUN mkdir -p /opt/quarto \ # # Second stage: Conda environment # -FROM condaforge/miniforge3:24.7.1-0 -LABEL org.opencontainers.image.authors="erik.fasterius@nbis.se" -LABEL org.opencontainers.image.description="Dockerfile for the Tools for Reproducible Research NBIS / Elixir workshop" -COPY --from=quarto /opt/quarto /opt/quarto -ENV PATH="${PATH}:/opt/quarto/bin" +FROM condaforge/miniforge3:24.7.1-0 AS conda RUN apt-get update \ && apt-get install -y --no-install-recommends \ pkg-config \ && apt-get clean - -# Copy and install the Conda environment COPY environment.yml ./ RUN conda config --set channel_priority strict \ && conda env update --name base --file environment.yml \ && conda clean --all --force-pkgs-dirs --yes +# +# Third stage: Final image +# +FROM ubuntu:20.04 +COPY --from=quarto /opt/quarto /opt/quarto +COPY --from=conda /opt/conda /opt/conda/ +ENV PATH="${PATH}:/opt/quarto/bin:/opt/conda/bin" +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + ca-certificates \ + # Use bash as shell SHELL ["/bin/bash", "-c"] @@ -42,3 +46,6 @@ WORKDIR /work # Start Bash shell by default CMD /bin/bash + +LABEL org.opencontainers.image.authors="erik.fasterius@nbis.se" +LABEL org.opencontainers.image.description="Dockerfile for the Tools for Reproducible Research NBIS / Elixir workshop"