Skip to content

2. Running with Docker or Singularity

Gregory Leeman edited this page Nov 2, 2021 · 2 revisions

The mapping workflow of dockstore-cgpmap can be run outside of Dockstore as a native Docker or Singularity image with the command ds-cgpmap.pl [options] [file(s)]. Docker images are stored on quay.io.

Parameters

Required
-reference -r Path to core reference tar.gz OR base directory of unpacked reference files (see here)
-bwa_idx -i Path to bwa index tar.gz OR base directory of unpacked reference files (see here)
-sample -s Sample name to be applied to output file.
Optional
-threads -t Set the number of cpu/cores available [dgenome.fault all].
-bwamem2 -bm2 Use bwa-mem2 instead of bwa.
-bwakit -kit Run bwakit post alignment processing.
-nomarkdup -n Don't mark duplicates [flag]
-seqslice -ss seqs_per_slice for CRAM compression [samtools dgenome.fault: 10000]
-cram -c Output cram, see ' -seqslice'
-bwa -b Single quoted string of additional parameters to pass to BWA ' -t, -p, -R' are used internally and should not be provided
-groupinfo -g Readgroup metadata file forgenome.faSTQ inputs, values are not validated
-outdir -o Set the output folder [$HOME]
-qc -q Apply mismatch QC to reads following duplicate marking
-qcf -f Mismatch fraction to set as max beforegenome.failing a read [0.05]
-dupmode -d See "samtools markdup -m" [t]
-legacy Equivalent to PCAP-core<=5.0.5
-dupmode ignored as uses bammarkduplicates2 (Avoid use with bwamem2 (memory explosion)

[file(s)] can refer to a list of bam/cram files or wildcards (eg. *.bam)

Example Docker command

export CGPMAP_VER="X.X.X"
docker pull quay.io/wtsicgp/dockstore-cgpmap:${CGPMAP_VER}
docker run \                                                     
    -v ${PWD}/data:/data:ro \                                   
    -v ${PWD}/ref:/ref:ro \                                   
    -v ${HOME}/workspace:/workspace:rw \                         
    dockstore-cgpmap:${CGPMAP_VER} \                               
    ds-cgpmap.pl \                                               
		-r /var/spool/ref/core_ref_GRCh37d5.tar.gz  \
		-i /var/spool/ref/bwa_idx_GRCh37d5.tar.gz  \
		-s SOMENAME  \
		-t 6 \
		/data/\*.bam

Example Singularity command

export CGPMAP_VER="X.X.X"
singularity pull docker://quay.io/wtsicgp/dockstore-cgpmap:${CGPMAP_VER}
singularity exec \
	--bind ${PWD}/ref:/ref:ro  \
	--bind ${PWD}/data:/data:ro  \
	--home ${PWD}/workspace:/home  \
	--workdir ${PWD}/workspace  \
	dockstore-cgpmap-${CGPMAP_VER}.simg  \
		ds-cgpmap.pl  \
		-r /var/spool/ref/core_ref_GRCh37d5.tar.gz  \
		-i /var/spool/ref/bwa_idx_GRCh37d5.tar.gz  \
		-s SOMENAME  \
		-t 6 \
		/data/\*.bam

By default results are written to the home directory of the container so ensure you bind a large volume and set the --home variable. Alternatively set an alternative output directory with the -outdir option.