diff --git a/freebayes/1.3.8/Dockerfile b/freebayes/1.3.8/Dockerfile new file mode 100644 index 000000000..6d87d0417 --- /dev/null +++ b/freebayes/1.3.8/Dockerfile @@ -0,0 +1,51 @@ +FROM mambaorg/micromamba:1.5.8 AS app + +ARG FREEBAYES_VER="1.3.7" + +USER root +WORKDIR / + +LABEL base.image="mambaorg/micromamba:1.5.8" +LABEL dockerfile.version="1" +LABEL software="FreeBayes" +LABEL software.version="1.3.7" +LABEL description="FreeBayes is a haplotype-based variant detector and is a great tool for calling variants from a population." +LABEL website="https://github.com/freebayes/freebayes" +LABEL license="https://github.com/freebayes/freebayes/blob/master/LICENSE" +LABEL maintainer="Kitty Chase" +LABEL maintainer.email="kitty.chase@dhhs.nc.gov" +LABEL maintainer2="Jill Hagey" +LABEL maintainer2.email="jvhagey@gmail.com" + +# 'RUN' executes code during the build +# Install dependencies via apt-get or yum if using a centos or fedora base +RUN apt-get update && apt-get install -y --no-install-recommends \ + wget \ + ca-certificates \ + procps && \ + apt-get autoclean && rm -rf /var/lib/apt/lists/* + +RUN micromamba install --name base -c conda-forge -c bioconda -c defaults freebayes=${FREEBAYES_VER} && \ + micromamba clean -a -f -y && \ + mkdir /data + +ENV PATH="/opt/conda/bin/:${PATH}" \ + LC_ALL=C.UTF-8 + +# 'CMD' instructions set a default command when the container is run. This is typically 'tool --help.' +CMD [ "freebayes", "--help" ] + +# set final working directory to /data +WORKDIR /data + +FROM app AS test + +# set working directory so that all test inputs & outputs are kept in /test +WORKDIR /test + +RUN freebayes --help + +RUN wget https://github.com/StaPH-B/docker-builds/raw/master/tests/SARS-CoV-2/SRR13957123.sorted.bam && \ + wget https://raw.githubusercontent.com/artic-network/primer-schemes/refs/heads/master/nCoV-2019/V5.3.2/SARS-CoV-2.reference.fasta && \ + freebayes -f SARS-CoV-2.reference.fasta SRR13957123.sorted.bam > var.vcf && \ + head var.vcf diff --git a/freebayes/1.3.8/README.md b/freebayes/1.3.8/README.md new file mode 100644 index 000000000..64d0522c9 --- /dev/null +++ b/freebayes/1.3.8/README.md @@ -0,0 +1,30 @@ +# FreeBayes Container + +## Documentation and Overview + +Main Tool: FreeBayes - [Haplotype-based variant detection from short-read sequencing](https://arxiv.org/abs/1207.3907) + +Additional tools: +- vcftools version is 0.1.16 +- samtools version is 1.13 + +Full documentation: https://github.com/freebayes/freebayes + +FreeBayes is a haplotype-based variant detector and is a great tool for calling variants from a population. + +FreeBayes is a Bayesian genetic variant detector designed to find small polymorphisms, specifically SNPs (single-nucleotide polymorphisms), indels (insertions and deletions), MNPs (multi-nucleotide polymorphisms), and complex events (composite insertion and substitution events) smaller than the length of a short-read sequencing alignment. + +FreeBayes is haplotype-based, in the sense that it calls variants based on the literal sequences of reads aligned to a particular target, not their precise alignment. This model is a straightforward generalization of previous ones (e.g. PolyBayes, samtools, GATK) which detect or report variants based on alignments. This method avoids one of the core problems with alignment-based variant detection — that identical sequences may have multiple possible alignments:” + +## Usage + +Basic usage: +``` +freebayes -f [REFERENCE] [OPTIONS] [BAM FILES] >[OUTPUT] +``` +Example usage: +``` +freebayes --bam Sample_1_sorted.bam --ploidy 1 --fasta-reference reference.fasta --vcf Sample1_freebayes.vcf +``` + +There are LOTS of options so use `freebayes --help` to get full list.