1- # This Dockerfile is based on https://github.com/ahmedmoustafa/bioinformatics-toolbox
21FROM ubuntu:22.04
32
4- LABEL description="ECRRM Genomics Commons Docker Image "
3+ LABEL description="Bioinformatics Docker Container "
54LABEL maintainer="amoustafa@aucegypt.edu"
6- LABEL version="1.0"
7-
85
96RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections
107
@@ -21,7 +18,7 @@ add-apt-repository restricted
2118# #########################################################################################
2219# #########################################################################################
2320
24- ARG SETUPDIR=/tmp/genomics-commons -setup/
21+ ARG SETUPDIR=/tmp/bioinformatics-toolbox -setup/
2522RUN mkdir -p $SETUPDIR
2623WORKDIR $SETUPDIR
2724
@@ -409,6 +406,179 @@ chmod +x /usr/local/bin/sambamba
409406# #########################################################################################
410407# #########################################################################################
411408
409+ # Assemblers
410+ # ###########
411+ # ###########
412+
413+ # SPAdes
414+ # #######
415+ RUN cd $SETUPDIR/ && \
416+ wget -t 0 http://cab.spbu.ru/files/release3.15.5/SPAdes-3.15.5-Linux.tar.gz && \
417+ tar zxvf SPAdes-3.15.5-Linux.tar.gz && \
418+ mv SPAdes-3.15.5-Linux/bin/* /usr/local/bin/ && \
419+ mv SPAdes-3.15.5-Linux/share/* /usr/local/share/
420+
421+ # ABySS
422+ # ######
423+ # RUN cd $SETUPDIR/ && \
424+ # git clone https://github.com/sparsehash/sparsehash.git && \
425+ # cd $SETUPDIR/sparsehash && \
426+ # ./autogen.sh && ./configure && make && make install
427+
428+ # RUN cd $SETUPDIR/ && \
429+ # git clone https://github.com/bcgsc/btllib.git && \
430+ # btllib/compile && \
431+ # mv $SETUPDIR/btllib/install/bin/ /usr/local/bin/ && \
432+ # mv $SETUPDIR/btllib/install/include/ /usr/local/include/ && \
433+ # mv $SETUPDIR/btllib/install/lib/ /usr/local/lib/
434+
435+ # RUN cd $SETUPDIR/ && \
436+ # git clone https://github.com/bcgsc/abyss.git && \
437+ # cd $SETUPDIR/abyss && \
438+ # ./autogen.sh && ./configure && make && make install
439+
440+ # Velvet
441+ # #######
442+ RUN cd $SETUPDIR/ && \
443+ git clone https://github.com/dzerbino/velvet.git && \
444+ cd $SETUPDIR/velvet/ && \
445+ make && mv velvet* /usr/local/bin/
446+
447+ # MEGAHIT
448+ # ########
449+ RUN cd $SETUPDIR/ && \
450+ git clone https://github.com/voutcn/megahit.git && \
451+ cd $SETUPDIR/megahit && \
452+ git submodule update --init && \
453+ mkdir build && \
454+ cd $SETUPDIR/megahit/build && \
455+ cmake .. -DCMAKE_BUILD_TYPE=Release && make -j4 && make simple_test && make install
456+
457+ # MetaVelvet
458+ # ###########
459+ RUN cd $SETUPDIR/ && \
460+ git clone https://github.com/hacchy/MetaVelvet.git && \
461+ cd $SETUPDIR/MetaVelvet && \
462+ make && mv meta-velvetg /usr/local/bin/
463+
464+ # #########################################################################################
465+ # #########################################################################################
466+
467+ # Phylogenetics
468+ # ##############
469+ # ##############
470+
471+ # TreeTime
472+ # #########
473+ RUN pip3 install phylo-treetime
474+
475+ # FastTree
476+ # #########
477+ RUN cd $SETUPDIR/ && \
478+ wget -t 0 http://www.microbesonline.org/fasttree/FastTree.c && \
479+ gcc -O3 -finline-functions -funroll-loops -Wall -o FastTree FastTree.c -lm && \
480+ gcc -DOPENMP -fopenmp -O3 -finline-functions -funroll-loops -Wall -o FastTreeMP FastTree.c -lm && \
481+ mv FastTree /usr/local/bin && \
482+ mv FastTreeMP /usr/local/bin
483+
484+ # RAxML
485+ # ######
486+ RUN cd $SETUPDIR/ && \
487+ git clone https://github.com/stamatak/standard-RAxML.git && \
488+ cd $SETUPDIR/standard-RAxML && \
489+ rm -fr *.o && make -f Makefile.gcc && cp raxmlHPC /usr/local/bin/ && \
490+ rm -fr *.o && make -f Makefile.SSE3.gcc && cp raxmlHPC-SSE3 /usr/local/bin/ && \
491+ rm -fr *.o && make -f Makefile.PTHREADS.gcc && cp raxmlHPC-PTHREADS /usr/local/bin/ && \
492+ rm -fr *.o && make -f Makefile.SSE3.PTHREADS.gcc && cp raxmlHPC-PTHREADS-SSE3 /usr/local/bin/ && \
493+ rm -fr *.o && make -f Makefile.MPI.gcc && cp raxmlHPC-MPI /usr/local/bin/ && \
494+ rm -fr *.o && make -f Makefile.SSE3.MPI.gcc && cp raxmlHPC-MPI-SSE3 /usr/local/bin/
495+
496+ # RAxML NG
497+ # #########
498+ RUN cd $SETUPDIR/ && \
499+ git clone --recursive https://github.com/amkozlov/raxml-ng && \
500+ cd $SETUPDIR/raxml-ng && \
501+ mkdir build && \
502+ cd $SETUPDIR/raxml-ng/build && \
503+ cmake .. && make && mv ../bin/raxml-ng /usr/local/bin/ && \
504+ cmake -DSTATIC_BUILD=ON -DENABLE_RAXML_SIMD=OFF -DENABLE_PLLMOD_SIMD=OFF .. && make && mv ../bin/raxml-ng-static /usr/local/bin/ && \
505+ cmake -DUSE_MPI=ON .. && make && mv ../bin/raxml-ng-mpi /usr/local/bin/
506+
507+ # PhyML
508+ # ######
509+ RUN cd $SETUPDIR/ && \
510+ git clone https://github.com/stephaneguindon/phyml.git && \
511+ cd $SETUPDIR/phyml/ && \
512+ sh ./autogen.sh && ./configure && make && make install
513+
514+ # Pplacer
515+ # ########
516+ RUN cd $SETUPDIR/ && \
517+ wget -t 0 https://github.com/matsen/pplacer/releases/download/v1.1.alpha19/pplacer-linux-v1.1.alpha19.zip && \
518+ unzip pplacer-linux-v1.1.alpha19.zip && \
519+ cd $SETUPDIR/pplacer-Linux-v1.1.alpha19/ && \
520+ mv guppy /usr/local/bin/ && \
521+ mv pplacer /usr/local/bin/ && \
522+ mv rppr /usr/local/bin/ && \
523+ cd $SETUPDIR/pplacer-Linux-v1.1.alpha19/scripts/ && \
524+ python setup.py install
525+
526+ # #########################################################################################
527+ # #########################################################################################
528+
529+ # Gene Prediction
530+ # ################
531+ # ################
532+
533+ RUN cd $SETUPDIR/ && \
534+ wget -t 0 https://github.com/hyattpd/Prodigal/releases/download/v2.6.3/prodigal.linux && \
535+ mv prodigal.linux /usr/local/bin/prodigal && \
536+ chmod +x /usr/local/bin/prodigal
537+
538+ # GlimmerHMM
539+ # ###########
540+ RUN cd $SETUPDIR/ && \
541+ wget -t 0 http://ccb.jhu.edu/software/glimmerhmm/dl/GlimmerHMM-3.0.4.tar.gz && \
542+ tar zxvf GlimmerHMM-3.0.4.tar.gz && \
543+ mv $SETUPDIR/GlimmerHMM/bin/glimmerhmm_linux_x86_64 /usr/local/bin/glimmerhmm && \
544+ chmod +x /usr/local/bin/glimmerhmm
545+
546+ # Infernal
547+ # #########
548+ RUN cd $SETUPDIR/ && \
549+ wget -t 0 http://eddylab.org/infernal/infernal-1.1.4.tar.gz && \
550+ tar zxvf infernal-1.1.4.tar.gz && \
551+ cd $SETUPDIR/infernal-1.1.4/ && \
552+ ./configure && make && make install
553+
554+ # GECCO
555+ # ######
556+ RUN pip install gecco-tool
557+
558+ # DeepBGC
559+ # ########
560+ RUN apt-get update && \
561+ apt-get -y install software-properties-common && \
562+ add-apt-repository ppa:deadsnakes/ppa && \
563+ apt-get install -y python3-distutils python3-apt
564+ RUN pip install kiwisolver --force
565+ RUN pip install deepbgc
566+ RUN pip install deepbgc[hmm]
567+ # RUN deepbgc download
568+
569+ # antiSMASH
570+ # ##########
571+ # RUN apt-get update && apt-get -y install hmmer2 hmmer fasttree
572+ RUN wget http://dl.secondarymetabolites.org/antismash-stretch.list -O /etc/apt/sources.list.d/antismash.list && \
573+ wget -q -O- http://dl.secondarymetabolites.org/antismash.asc | apt-key add -
574+ RUN cd $SETUPDIR/ && \
575+ wget https://dl.secondarymetabolites.org/releases/7.0.0/antismash-7.0.0.tar.gz && tar -zxf antismash-7.0.0.tar.gz && \
576+ pip install ./antismash-7.0.0
577+ # RUN download-antismash-databases
578+
579+ # #########################################################################################
580+ # #########################################################################################
581+
412582# Misc
413583# #####
414584# #####
@@ -457,36 +627,78 @@ mv IGV_Linux_snapshot IGV
457627
458628# VEP
459629# ####
460- RUN cd /apps/ && \
461- apt-get -y install cpanminus libtry-tiny-perl libperl4-corelibs-perl && \
462- cpanm autodie && \
463- cpanm Module::Build && \
464- cpanm Bio::DB::HTS::Tabix && \
465- git clone https://github.com/Ensembl/ensembl-vep.git && \
466- cd ensembl-vep
467- # RUN cd /apps/ensembl-vep && perl INSTALL.pl --NO_HTSLIB --AUTO alcfp --SPECIES homo_sapiens --ASSEMBLY GRCh38 --PLUGINS all
630+ # RUN cd /apps/ && \
631+ # apt-get -y install cpanminus libtry-tiny-perl libperl4-corelibs-perl && \
632+ # cpanm autodie && \
633+ # cpanm Module::Build && \
634+ # cpanm Bio::DB::HTS::Tabix && \
635+ # git clone https://github.com/Ensembl/ensembl-vep.git && \
636+ # cd ensembl-vep && \
637+ # perl INSTALL.pl --NO_HTSLIB --AUTO alcfp --SPECIES homo_sapiens --ASSEMBLY GRCh38 --PLUGINS all
468638
469639
470640# #########################################################################################
471641# #########################################################################################
472642
473- # Population Genetics
474- # ####################
475- # ####################
643+ # Taxonomic Classification & Microbiome
644+ # ######################################
645+ # ######################################
476646
477- # PLINK 1.90
647+ # Centrifuge
478648# ###########
649+
650+ RUN cd $SETUPDIR/ && \
651+ git clone https://github.com/DaehwanKimLab/centrifuge.git && \
652+ cd $SETUPDIR/centrifuge/ && \
653+ make && make install
654+
655+ # Pavian
656+ # #######
657+ RUN R -e "remotes::install_github('fbreitwieser/pavian')"
658+
659+ # Kraken2
660+ # ########
479661RUN cd $SETUPDIR/ && \
480- wget -t 0 https://s3.amazonaws.com/plink1-assets/plink_linux_x86_64_20230116.zip && \
481- unzip plink_linux_x86_64_20230116.zip && \
482- mv plink /usr/local/bin/ && \
483- mv prettify /usr/local/bin/ && \
662+ git clone https://github.com/DerrickWood/kraken2.git && \
663+ cd $SETUPDIR/kraken2/src/ && \
664+ make && \
665+ cd $SETUPDIR/kraken2/ && \
666+ bash install_kraken2.sh /usr/local/bin/
484667
668+ RUN cd $SETUPDIR/ && \
669+ git clone https://github.com/jenniferlu717/Bracken.git && \
670+ cd $SETUPDIR/Bracken && \
671+ bash install_bracken.sh && \
672+ mv bracken /usr/local/bin/ && \
673+ mv bracken-build /usr/local/bin/
674+
675+ # MetaPhlAn
676+ # ##########
677+ RUN pip install metaphlan graphlan panphlan humann
678+ # RUN metaphlan --install
679+
680+ # mothur
681+ # #######
682+ RUN apt-get -y install libreadline*
683+ RUN cd $SETUPDIR/ && \
684+ wget -t 0 http://drive5.com/uchime/uchime4.2.40_i86linux32 && \
685+ mv uchime4.2.40_i86linux32 /usr/local/bin/uchime && \
686+ chmod a+x /usr/local/bin/uchime
687+
688+ RUN cd $SETUPDIR/ && \
689+ wget -t 0 https://github.com/mothur/mothur/releases/download/v1.48.0/Mothur.linux_8.zip && \
690+ unzip Mothur.linux_8.zip && \
691+ mv $SETUPDIR/mothur/mothur /usr/local/bin/
692+
693+ # QIIME2
694+ # #######
695+ RUN cd $SETUPDIR/ && \
696+ wget https://data.qiime2.org/distro/core/qiime2-2023.5-py38-linux-conda.yml && \
697+ /usr/local/miniconda3/bin/conda env create -n qiime2-2023.5 --file qiime2-2023.5-py38-linux-conda.yml
485698
486699# #########################################################################################
487700# #########################################################################################
488701
489-
490702# Finishing
491703# ##########
492704# ##########
@@ -501,25 +713,28 @@ RUN echo "#!/usr/bin/bash" > $SETUPDIR/init.sh
501713RUN echo "export PATH=$PATH:/usr/local/ncbi/sra-tools/bin/:/usr/local/ncbi/ngs-tools/bin/:/usr/local/ncbi/ncbi-vdb/bin:/usr/local/miniconda3/bin:/apps/gatk:/apps/IGV:/apps/ensembl-vep:" >> $SETUPDIR/init.sh
502714RUN echo "source /etc/profile.d/*" >> $SETUPDIR/init.sh
503715RUN echo "echo '****************************************'" >> $SETUPDIR/init.sh
504- RUN echo "echo 'Welcome to ECRRM Genomics Commons (v1.0 )'" >> $SETUPDIR/init.sh
716+ RUN echo "echo 'Welcome to Bioinformatics Toolbox (v1.3 )'" >> $SETUPDIR/init.sh
505717RUN echo "echo '****************************************'" >> $SETUPDIR/init.sh
506- RUN echo "echo 'CRRM Genomics Commons is a docker container for bioinformatics'" >> $SETUPDIR/init.sh
718+ RUN echo "echo 'Bioinformatics Toolbox is a docker container for bioinformatics'" >> $SETUPDIR/init.sh
507719RUN echo "echo " >> $SETUPDIR/init.sh
508720RUN echo "echo 'For a list of installed tools, please visit: '" >> $SETUPDIR/init.sh
509- RUN echo "echo 'https://github.com/ECRRM/genomics-commons /blob/master/Tools.md'" >> $SETUPDIR/init.sh
721+ RUN echo "echo 'https://github.com/ahmedmoustafa/bioinformatics-toolbox /blob/master/Tools.md'" >> $SETUPDIR/init.sh
510722RUN echo "echo " >> $SETUPDIR/init.sh
511723RUN echo "echo 'If you would like to request adding certain tools or report a problem,'" >> $SETUPDIR/init.sh
512- RUN echo "echo 'please submit an issue https://github.com/ECRRM/genomics-commons /issues'" >> $SETUPDIR/init.sh
724+ RUN echo "echo 'please submit an issue https://github.com/ahmedmoustafa/bioinformatics-toolbox /issues'" >> $SETUPDIR/init.sh
513725RUN echo "echo " >> $SETUPDIR/init.sh
726+ RUN echo "echo 'If you use Bioinformatics Toolbox in your work, please cite: '" >> $SETUPDIR/init.sh
727+ RUN echo "echo '10.5281/zenodo.8103969'" >> $SETUPDIR/init.sh
514728RUN echo "echo 'Have fun!'" >> $SETUPDIR/init.sh
515729RUN echo "echo ''" >> $SETUPDIR/init.sh
516730RUN echo "echo ''" >> $SETUPDIR/init.sh
731+ RUN echo "/usr/bin/bash" >> $SETUPDIR/init.sh
517732RUN echo "" >> $SETUPDIR/init.sh
518- RUN mv $SETUPDIR/init.sh /etc/genomics-commons .sh
519- RUN chmod a+x /etc/genomics-commons .sh
733+ RUN mv $SETUPDIR/init.sh /etc/bioinformatics-toolbox .sh
734+ RUN chmod a+x /etc/bioinformatics-toolbox .sh
520735
521736WORKDIR /root/
522- CMD ["/etc/genomics-commons .sh" ]
737+ ENTRYPOINT ["/etc/bioinformatics-toolbox .sh" ]
523738RUN rm -fr $SETUPDIR
524739
525740# Versions
@@ -539,22 +754,37 @@ STAR --version ; \
539754salmon --version ; \
540755bbmap.sh --version ; \
541756hts_Stats --version ; \
757+ treetime --version ; \
758+ raxmlHPC -v ; \
759+ raxml-ng --version ; \
760+ pplacer --version ; \
542761samtools --version ; \
543762bcftools --version ; \
544763bamtools --version ; \
545764vcftools --version ; \
546765bedtools --version ; \
547766deeptools --version ; \
548767bedops --version ; \
768+ spades.py --version ; \
769+ megahit --version ; \
770+ spades.py --version ; \
549771seqkit version ; \
550772fastp --version ; \
551773fqtrim -V ; \
552774seqmagick --version ; \
775+ gecco --version ; \
776+ deepbgc info ; \
553777/apps/gatk/gatk --list ; \
554778/apps/IGV/igv.sh --version ; \
779+ centrifuge --version ; \
780+ kraken2 --version ; \
781+ bracken -v ; \
782+ metaphlan --version ; \
783+ humann --version ; \
784+ uchime --version ; \
785+ mothur --version ; \
555786/usr/local/miniconda3/bin/conda --version ; \
556- nextflow -version ;\
557- plink --version
787+ nextflow -version
558788
559789# #########################################################################################
560790# #########################################################################################
0 commit comments