代码语言:javascript复制之前我们在教程:为什么要用conda来安装一个R包 提到过常规的conda命令 都是基于Linux 操作平台,比如Linux各个用户里面安装自己的conda,每个用户独立操作,安装方法代码如下:
# 首先下载文件,20M/S的话需要几秒钟即可
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
# 接下来使用bash命令来运行我们下载的文件,记得是一路yes下去
bash Miniconda3-latest-Linux-x86_64.sh
# 安装成功后需要更新系统环境变量文件
source ~/.bashrc
接下来 使用conda安装aspera,新建download子环境,然后在该环境下面安装指定软件 ,就可以高速下载 不同 数据集的fastq文件 ,代码如下:
代码语言:javascript复制conda create -n download
conda activate download
conda install -y -c hcc aspera-cli
which ascp
## 一定要搞清楚你的软件被conda安装在哪
ls -lh ~/miniconda3/envs/download/etc/asperaweb_id_dsa.openssh
基本上每个软件都需要一个子环境,尤其是我们对该软件不熟悉而且怕它跟其它软件干扰的时候。比如使用conda安装pyscenic的一些依赖:
代码语言:javascript复制# 需要一些依赖,尤其是这个python 版本
conda create -n pyscenic python=3.7
conda activate pyscenic
conda install -y numpy
conda install -y -c anaconda cytoolz
conda install -y scanpy
pip install pyscenic
每个软件都可以独立给一个环境,虽然是这样会导致很多冗余的软件,不过,确实很方便。
如果是一个ngs流程它里面有十几款软件,而且经过了测试后,我们也会把它存放在同一个环境,比如RNA-seq数据处理环境, 代码如下:
代码语言:javascript复制conda create -n rna
conda activate rna
# conda search galore
conda install -y trim-galore
# python-3.7.9 | 57.3 MB, openjdk-10.0.2 | 189.2 MB
conda install -y star hisat2 bowtie2 # 没有其它依赖
conda install -y subread bedtools deeptools
conda install -y salmon
conda install -y -c bioconda suppa
如果我们对RNA-seq数据处理环境里面的每个软件都设置一个环境,每次运行都需要激活不同环境,也是很麻烦,所以我们就会把十几款软件都放在rna这个小环境里面。
查看自己的镜像
代码 conda config --get channels 可以看到自己的镜像配置,相当于修改~/.condarc
里面内容,目前不同地区镜像效果大家最好是实时查询一下。
把安装好的环境导出成为yaml文件
前面的RNA-seq数据处理环境,我顺利安装了十几个软件而且没有冲突,就可以 conda env export - 成为一个yaml文件,如下所示:
代码语言:javascript复制conda env export --file rna_env.yml --name rna
这个 rna_env.yml 文件就可以传递给任何人在然后电脑或者服务器里面重新安装一个同样的RNA-seq数据处理环境。
代码语言:javascript复制conda env create -f rna_env.yml