Py学习  »  docker

没有docker我真的不想动这样的生信软件

生信技能树 • 4 年前 • 561 次点击  

看到群里有人咨询TCGA数据库御用的SNP6.0芯片的CNV数据的分析软件,GISTIC2如何安装和使用。让我想起来五六年前安装它的恐惧,有必要系统性整理一下,并且实名羡慕一下 现在的小朋友们,安装软件方便的不要不要的!

C语言源代码需要编译的软件

最开始开发者都是C语言流派, 所以标准的源代码安装三部曲即可,即使 configure+make+ make install 来安装

mkdir -p  ~/biosoft/myBin
echo 'export PATH=/home/jianmingzeng/biosoft/myBin/bin:$PATH' >>~/.bashrc 
source ~/.bashrc
cd ~/biosoft
mkdir cmake &&  cd cmake
wget http://cmake.org/files/v3.3/cmake-3.3.2.tar.gz
tar xvfz cmake-3.3.2.tar.gz
cd cmake-3.3.2 
./configure --prefix=/home/jianmingzeng/biosoft/myBin
make
make install 

## Download and install samstat
## http://samstat.sourceforge.net/
## http://www.htslib.org/doc/samtools.html
cd ~/biosoft
mkdir samstat &&  cd samstat
wget http://liquidtelecom.dl.sourceforge.net/project/samstat/samstat-1.5.tar.gz
tar zxvf  samstat-1.5.tar.gz 
cd samstat-1.5 
./configure --prefix=/home/jianmingzeng/biosoft/myBin
make
make install
~/biosoft/myBin/bin/samstat --help

但是这样的安装受限于操作系统库文件,大多数人是没有操作系统管理员权限的,所以安装库文件特别的免麻烦,这也就是早期生物信息学初学者遇到最多的bug,去搜索一个软件的安装使用方法, 甚至彻夜不眠三天两夜都搞不定一个小小的软件安装!实在是不能怪他,毕竟并不是计算机专业科班出身,可能连为什么需要三部曲,configure+make+ make install 来安装软件都不知道,谈何调试解决bug呢。

打包好的二进制可执行软件

所以作者会提供打包好的二进制可执行文件,下载即可使用它。

# ftp://ftp.ncbi.nlm.nih.gov/blast/
# ftp://ftp.ncbi.nlm.nih.gov/blast/executables/LATEST

进入就可以看到,非常齐全的软件列表,都是下载即可使用!

 

按需下载即可。

各个编程语言依赖软件

但是后来开发者都是各个编程语言派系,perl,python,r,java,julia,go,ruby等等,甚至是MATLAB程序。

并不是说作为一个生信工程师,你需要学会那么多语言,其实你仔细想想看,你并没有学会C语言,仍然是在源代码安装大量软件。所以,对应各种编程语言依赖的软件,同样的是需要搞清楚常规安装方法即可。

pip install RPy2 --user 
pip install Numpy --user 
pip install Pandas --user 
pip install BioPython --user 
pip install matplotlib --user 
pip install PySQLite --user 

还是推荐conda解决

现在的生信工程师非常幸福啦,大量的NGS流程代码我几年前就共享在生信技能树,生信菜鸟团各大平台了。也无需一个个软件去搜索,去学习,去安装它。比如我在 鉴定新的lncRNA之上游流程 写到的,使用conda来创建LncRNA-seq的实战软件环境

conda create -n lncRNA 
conda activate lncRNA 
conda install -y -c  bioconda hisat2 stringtie samtools fastp   gffcompare
# conda search gffcompare

它会自动解决软件的有各式各样的依赖,不过,有些软件仅仅是安装并没有用,还需要下载配套数据库,比如 HOMER的motif寻找,数据库文件也是几个G,如果是在海外,下载的网速也是一个问题。

这个时候docker是一个解决方案

它不仅仅是帮你安装软件,还打包好测试数据,运行的示例,配套数据库,甚至还赠送你一个操作系统!

我在生信技能树上面写过部分docker教程, 目录如下:
感兴趣的可以简单浏览,如果要完全掌握,仍然是推荐大家看文档,多练习。比如gistic2就有docker镜像,一句话解决战斗:
docker pull cheungatm/gistic2:v2

然后vip群里的另外一位大佬(ShixiangWang)也给出了一些建议,也是他自己耗费一个上午的成果:

https://github.com/ShixiangWang/install_GISTIC
https://hub.docker.com/r/shixiangwang/gistic 

文末友情宣传

强烈建议你推荐给身边的博士后以及年轻生物学PI,多一点数据认知,让他们的科研上一个台阶:
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/56807
 
561 次点击