制作并上传镜像
NGS流程由fastp、bwa-mem、picard-insertsize、qualimap-bamqc、gatk-markduplicates、gatk-bqsr、gatk-applybqsr、gatk-haplotypecaller、gatk-mergevcfs和discvrseq-variantqc应用构成。在创建应用前,请先制作并上传应用所需的镜像。搭建NGS流程所需的镜像和版本如表1所示。
NGS流程步骤 |
描述 |
依赖镜像及版本 |
镜像下载命令 |
---|---|---|---|
Read Quality |
对测序得到的fastq数据进行质控。 |
fastp:0.20.1 |
docker pull biocontainers/fastp:v0.20.1_cv1 |
Mapping and Sort and index |
将质控之后得到的Clean Reads比对到参考基因组上。 |
bwa-mem:0.7.17 |
该镜像由bwa和samtool合并而成,镜像制作方法请参见制作bwa-mem镜像。 |
Insert Size Estimation |
针对构建Index后的bam文件,统计测序数据的Insert size的分布。 |
picard-insertsize:2.23.3 |
docker pull broadinstitute/picard:2.23.3 |
Bam QC |
评估比对得到的bam文件的质量。 |
qualimap-bamqc:2.0.0 |
docker pull maxulysse/qualimap:2.0.0 |
GATK MarkDuplicates |
标记比对bam文件中的重复Reads。 |
gatk-markduplicates:4.1.9.0 |
docker pull broadinstitute/gatk:4.1.9.0 |
gatk BaseRecalibrator |
基于比对bam文件评估矫正参数。 |
gatk-bqsr:4.1.9.0 |
|
gatk ApplyBQSR |
基于比对bam文件进行矫正。 |
gatk-applybqsr:4.1.9.0 |
|
gatk HaplotypeCaller |
基于比对和矫正之后的bam文件进行Variant Calling的工作。 |
gatk-haplotypecaller:4.1.9.0 |
该镜像由gatk和parallel合并而成,以提高并行运行效率,镜像制作方法请参见制作gatk-haplotypecaller镜像。 |
gatk MergeVcfs |
合并分bin变异检测的VCF文件。 |
gatk-mergevcfs:4.1.9.0 |
docker pull broadinstitute/gatk:4.1.9.0 |
Variant QC |
针对输出的VCF文件进行质控。 |
discvrseq-variantqc:1.17 |
docker pull bbimber/discvrseq:release-1.17 |
制作bwa-mem镜像
- 在本地搭建Docker环境。
要求安装的容器引擎版本必须为1.11.2及以上。
- 下载bwa和samtools软件。
wget http://downloads.sourceforge.net/project/bio-bwa/bwa-0.7.17.tar.bz2 wget https://github.com/samtools/samtools/releases/download/1.10/samtools-1.10.tar.bz2
- 编写Dockerfile将bwa和samtool镜像合并。
详细的Dockerfile指令请参见Dockerfile参考。
- 执行vi Dockerfile命令,进入Dockerfile文件中,编写文件。
FROM centos ENV PATH $PATH:/usr/local/samtools/bin:/usr/local/bwa-0.7.17 ADD ./bwa-0.7.17.tar.bz2 /usr/local ADD ./samtools-1.10.tar.bz2 /opt RUN yum makecache && \ yum install -y make gcc ncurses-devel bzip2-devel xz-devel zlib-devel&& \ cd /usr/local/bwa-0.7.17 && make && \ cd /opt/samtools-1.10 && ./configure --prefix=/usr/local/samtools && make && make install
- 按Esc键,并执行:wq保存并退出Dockerfile。
- 制作镜像。
docker build -t bwa_samtools:0.7.17-1.10 .
- 执行vi Dockerfile命令,进入Dockerfile文件中,编写文件。
制作gatk-haplotypecaller镜像
- 在本地搭建Docker环境。
要求安装的容器引擎版本必须为1.11.2及以上。
- 编写Dockerfile制作gatk-haplotypecaller镜像。
- 执行vi Dockerfile命令,进入Dockerfile文件中,编写文件。
FROM broadinstitute/gatk:4.1.9.0 RUN apt-get update RUN apt-get install -y parallel
- 按Esc键,并执行:wq退出Dockerfile。
- 制作镜像。
docker build -t gatk-haplotypecaller:4.1.9.0 .
详细的Dockerfile指令请参见Dockerfile参考。
- 执行vi Dockerfile命令,进入Dockerfile文件中,编写文件。
上传镜像
请依据表1提供的镜像下载命令下载搭建NGS流程所需的镜像。并依据制作bwa-mem镜像和制作gatk-haplotypecaller镜像制作镜像。制作好后的镜像如图1所示,请按照以下步骤将镜像上传至EIHealth平台。
- 使用命令行工具,使用health switch project <project-name>命令进入待操作的项目。
例如,使用health switch project ngs-project命令进入到名为ngs-project的项目中。
- 通过health docker tag命令给要上传的镜像打标签。
- 命令结构
health docker tag <source-image-name:source-tag-name> <target-image-name:target-tag-name>
命令中source-image-name为镜像名称,source-tag-name为镜像标签,target-image-name和target-tag-name可自定义。
- 打标签命令
依次执行以下命令为镜像打标签。
health docker tag biocontainers/fastp:v0.20.1_cv1 fastp:0.20.1 health docker tag bwa_samtools:0.7.17-1.10 bwa_samtools:0.7.17-1.10 health docker tag broadinstitute/picard:2.23.3 picard-insertsize:2.23.3 health docker tag maxulysse/qualimap:2.0.0 qualimap-bamqc:2.0.0 health docker tag broadinstitute/gatk:4.1.9.0 gatk-markduplicates:4.1.9.0 health docker tag broadinstitute/gatk:4.1.9.0 gatk-bqsr:4.1.9.0 health docker tag broadinstitute/gatk:4.1.9.0 gatk-applybqsr:4.1.9.0 health docker tag gatk-haplotypecaller:4.1.9.0 gatk-haplotypecaller:4.1.9.0 health docker tag broadinstitute/gatk:4.1.9.0 gatk-mergevcfs:4.1.9.0 health docker tag bbimber/discvrseq:release-1.17 discvrseq-variantqc:1.17
- 命令结构
- 使用health docker push命令上传镜像。
- 命令结构
- 上传镜像命令
依次执行以下命令将镜像上传至EIHealth平台。
health docker push fastp:0.20.1 health docker push bwa_samtools:0.7.17-1.10 health docker push picard-insertsize:2.23.3 health docker push qualimap-bamqc:2.0.0 health docker push gatk-markduplicates:4.1.9.0 health docker push gatk-bqsr:4.1.9.0 health docker push gatk-applybqsr:4.1.9.0 health docker push gatk-haplotypecaller:4.1.9.0 health docker push gatk-mergevcfs:4.1.9.0 health docker push discvrseq-variantqc:1.17
- 登录医疗智能体平台,进入项目并选择
页签,在镜像列表中查看已上传的镜像。图2 镜像列表