diff Dockerfile @ 9:0976a6257300 draft

planemo upload for repository https://forgemia.inra.fr/metexplore/met4j-galaxy commit 05db35f63cadb9d56dafff594a3507c59cd85273
author metexplore
date Fri, 31 Jan 2025 18:28:53 +0000
parents 7a6f2380fc1d
children
line wrap: on
line diff
--- a/Dockerfile	Wed Jul 26 15:33:45 2023 +0000
+++ b/Dockerfile	Fri Jan 31 18:28:53 2025 +0000
@@ -1,75 +1,83 @@
 
-FROM python:3.10-buster
+FROM python:3.9.12-slim-bullseye
 
 # set author
-MAINTAINER Ludovic Cottret <ludovic.cottret@inrae.fr>
+LABEL maintainer "Ludovic Cottret <ludovic.cottret@inrae.fr>"
 
 # set encoding
 ENV LC_ALL en_US.UTF-8
 ENV LANG en_US.UTF-8
 
-ENV PLANEMO_VENV_LOCATION /planemo-venv
-ENV CONDA /tmp/conda
+ENV DEBIAN_FRONTEND=noninteractive
+
+
+RUN useradd -ms /bin/bash galaxy_user
+# RUN usermod -aG sudo galaxy_user
 
-RUN \
-        apt-get update                                                                                         \
-    &&  apt-get install -y --no-install-recommends                                                             \
-        ed                                                                                                     \
-        less                                                                                                   \
-        locales                                                                                                \
-        vim-tiny                                                                                               \
-        wget                                                                                                   \
-        ca-certificates                                                                                        \
-        fonts-texgyre                                                                                          \
-        build-essential                                                                                        \
-        libseccomp-dev                                                                                         \
-        pkg-config                                                                                             \
-        squashfs-tools                                                                                         \
-        cryptsetup                                                                                             \
-    &&  echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen                                                            \
-    &&  locale-gen en_US.utf8                                                                                  \
-    &&  /usr/sbin/update-locale LANG=en_US.UTF-8                                                               \
-    &&  echo "deb http://http.debian.net/debian buster main" > /etc/apt/sources.list.d/debian-unstable.list    \
-    &&  echo 'APT::Default-Release "buster";' > /etc/apt/apt.conf.d/default                                    \
-    &&  echo 'APT::Install-Recommends "false";' > /etc/apt/apt.conf.d/90local-no-recommends                    \
-    &&  apt-get update                                                                                         \
-    &&  apt-get upgrade -y                                                                                     \
-    &&  apt-get install -y --no-install-recommends                                                             \
-        git                                                                                                    \
-        littler                                                                                                \
-        libhdf5-dev                                                                                            \
-        python-virtualenv                                                                                      \
-    &&  pip install virtualenv                                                                                 \
-    &&  python -m virtualenv "$PLANEMO_VENV_LOCATION"                                                          \
-    &&  . "$PLANEMO_VENV_LOCATION"/bin/activate                                                                \
-    &&  pip install --upgrade pip setuptools                                                                   \
-    &&  pip install planemo numpy                                                                              \
-    &&  apt-get clean autoclean                                                                                \
-    &&  apt-get autoremove --yes                                                                               \
-    &&  rm -rf /var/lib/{apt,dpkg,cache,log}/                                                                  \
-    &&  rm -rf /usr/bin/X11                                                                                    \
-    &&  rm -rf /tmp/*  
+# Install dependencies
+RUN apt-get update \
+    && apt-get install -y \
+    curl \
+    sudo \
+	build-essential \
+	libseccomp-dev \
+	autoconf \
+    automake \
+    cryptsetup \
+    fuse2fs \
+    git \
+    fuse \
+    libfuse-dev \
+    libglib2.0-dev \
+    libseccomp-dev \
+    libtool \
+    pkg-config \
+    runc \
+    squashfs-tools \
+    squashfs-tools-ng \
+    uidmap \
+    wget \
+    zlib1g-dev
+
+# Install planemo
+RUN pip install --upgrade pip \
+    && pip install planemo
 
 SHELL ["/bin/bash", "-c"]
 
+# Install GO
 RUN \
-    export VERSION=1.17.2 OS=linux ARCH=amd64                                                                  \
-    && wget https://dl.google.com/go/go$VERSION.$OS-$ARCH.tar.gz                                               \
-    && tar -C /usr/local -xzvf go$VERSION.$OS-$ARCH.tar.gz                                                     \
-    && rm go$VERSION.$OS-$ARCH.tar.gz                                                                          \
-    && echo 'export PATH=/usr/local/go/bin:$PATH' >> ~/.bashrc                                                 \
+    export VERSION=1.17.2 OS=linux ARCH=amd64 \
+    && wget https://dl.google.com/go/go$VERSION.$OS-$ARCH.tar.gz \
+    && tar -C /usr/local -xzvf go$VERSION.$OS-$ARCH.tar.gz \
+    && rm go$VERSION.$OS-$ARCH.tar.gz \
+    && echo 'export PATH=/usr/local/go/bin:$PATH' >> ~/.bashrc \
     && source ~/.bashrc
 
+# Install Singularity
 RUN \
     echo 'export PATH=/usr/local/go/bin:$PATH' >> ~/.bashrc \
     && source ~/.bashrc \
-    && export VERSION=3.10.0                                                                                           \
-    && wget https://github.com/sylabs/singularity/releases/download/v${VERSION}/singularity-ce-${VERSION}.tar.gz    \
-    && tar -xzf singularity-ce-${VERSION}.tar.gz                                                                    \  
+    && export VERSION=3.10.0 \
+    && wget https://github.com/sylabs/singularity/releases/download/v${VERSION}/singularity-ce-${VERSION}.tar.gz \
+    && tar -xzf singularity-ce-${VERSION}.tar.gz \  
     && cd singularity-ce-${VERSION} \
-    &&    ./mconfig && \
-    make -C builddir && \
-    make -C builddir install                                                                           
+    &&    ./mconfig \
+    && make -C builddir \
+    && make -C builddir install \
+	&& cd .. \
+	&& rm -rf singularity-ce-${VERSION} singularity-ce-${VERSION}.tar.gz
+
+# Clean
+
+RUN apt-get clean autoclean \
+	&&  apt-get autoremove --yes \
+	&&  rm -rf /var/lib/{apt,dpkg,cache,log}/ \
+	&&  rm -rf /usr/bin/X11 \
+	&&  rm -rf /tmp/*  
+
+
+# USER galaxyuser
 
 CMD []