foerstner-lab / READemption

A pipeline for the computational evaluation of RNA-Seq data
https://reademption.readthedocs.io
Other
37 stars 19 forks source link

Conda installation of reademption under /root in Dockerfile results in broken singularity image #44

Closed anfarr closed 2 years ago

anfarr commented 2 years ago

https://github.com/foerstner-lab/READemption/blob/4d319edf91130675f98765802ed16a3713ebe18d/Dockerfile#L6-L21 For usage on a HPC without root access i pulled the docker image hosted on dockerhub via singularity. singularity pull docker://tillsauerwein/reademption:2.0.1 However since segemehl and reademption are installed under /root and there is no read access for non root users, reademption can not be used.

Tillsa commented 2 years ago

Can you try editing the Dockerfile, and install conda in a folder where you have permissions?

anfarr commented 2 years ago

I ended up writing a singularity definition file. So far the resulting singularity image file seems to work.

Bootstrap: library
From: ubuntu:20.04

%post
    export DEBIAN_FRONTEND=noninteractive
    apt-get -y update -qq
    apt-get install -y --no-install-recommends software-properties-common dirmngr wget sudo curl pkg-config
    apt-get install -y python3 python3-setuptools python3-pip python3-matplotlib cython3 zlib1g-dev  make libncurses5-dev libxml2-dev libhts-dev libsodium-dev libssl-dev libpng-dev libjpeg-turbo8-dev
    apt-get install -y r-base r-base-core r-base-dev r-cran-rcppeigen r-cran-httr r-cran-openssl r-cran-png r-cran-rcurl r-cran-gplots 
    R --version
    pip install READemption==1.0.5
    pip install numpy==1.18.5
    cd /opt
    curl https://www.bioinf.uni-leipzig.de/Software/segemehl/downloads/segemehl-0.3.4.tar.gz > segemehl-0.3.4.tar.gz
    tar -xvf segemehl-0.3.4.tar.gz
    rm -f ./segemehl-0.3.4.tar.gz
    cd segemehl-*/ && make all && cd /
    ln -s /opt/segemehl-0.3.4/segemehl.x /usr/bin/segemehl.x
    ln -s /opt/segemehl-0.3.4/haarz.x /usr/bin/haarz.x
    R --slave -e 'install.packages("BiocManager", repos="https://ftp.gwdg.de/pub/misc/cran/", dependencies=TRUE)'
    R --slave -e 'BiocManager::install(version = "3.10")'
    R --slave -e 'install.packages("https://cran.r-project.org/src/contrib/Archive/locfit/locfit_1.5-9.2.tar.gz", repos=NULL, type="source")'
    R --slave -e 'BiocManager::install("genefilter")'
    R --slave -e 'BiocManager::install("DESeq2")'