From 908561e8760d3c71270125adb2187622182c3cf6 Mon Sep 17 00:00:00 2001 From: Haikel Bogale <70728342+Haikelnb@users.noreply.github.com> Date: Tue, 24 Oct 2023 13:59:52 -0400 Subject: [PATCH 1/3] Create README.md --- blast/2.14.1/README.md | 60 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 blast/2.14.1/README.md diff --git a/blast/2.14.1/README.md b/blast/2.14.1/README.md new file mode 100644 index 000000000..5724be14b --- /dev/null +++ b/blast/2.14.1/README.md @@ -0,0 +1,60 @@ +# blast+ container + +Main tools: + +- [blast+](https://blast.ncbi.nlm.nih.gov/Blast.cgi?PAGE_TYPE=BlastDocs&DOC_TYPE=Download) + +This is meant to assist in local blast searches. No blast databases will be maintained in this container. Be sure to mount your relevant Volumes with `--volumes` or `-v` when using the command line. + +blast+ is actually a suite of tools. blast+ v.2.14.1 includes: + +```bash +$ ls /ncbi-blast-2.14.1+/bin +blast_formatter +blast_formatter_vdb +blast_vdb_cmd +blastdb_aliastool +blastdbcheck +blastdbcmd +blastn +blastn_vdb +blastp +blastx +cleanup-blastdb-volumes.py +convert2blastmask +deltablast +dustmasker +get_species_taxids.sh +legacy_blast.pl +makeblastdb +makembindex +makeprofiledb +psiblast +rpsblast +rpstblastn +segmasker +tblastn +tblastn_vdb +tblastx +update_blastdb.pl +windowmasker +``` + +Currently not supported, but could be: + +```bash +get_species_taxids.sh # requires E-direct +update_blastdb.pl # requires perl +``` + +## Example Usage + +```bash +# making a blast database +makeblastdb -dbtype nucl -in fasta.fa + +# query +tblastn -query query.fasta -db fasta.fa -outfmt '6' -out blast_hits.txt +``` + +More documentation can be found at [https://www.ncbi.nlm.nih.gov/books/NBK569856/](https://www.ncbi.nlm.nih.gov/books/NBK569856/) and [https://www.ncbi.nlm.nih.gov/books/NBK279690/](https://www.ncbi.nlm.nih.gov/books/NBK279690/) From 35ff885809e48da74b3044b605f848315675717d Mon Sep 17 00:00:00 2001 From: Haikel Bogale <70728342+Haikelnb@users.noreply.github.com> Date: Tue, 24 Oct 2023 14:01:56 -0400 Subject: [PATCH 2/3] Create Dockerfile --- blast/2.14.1/Dockerfile | 63 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 blast/2.14.1/Dockerfile diff --git a/blast/2.14.1/Dockerfile b/blast/2.14.1/Dockerfile new file mode 100644 index 000000000..edecf6952 --- /dev/null +++ b/blast/2.14.1/Dockerfile @@ -0,0 +1,63 @@ +FROM ubuntu:focal as app + +ARG BLAST_VER="2.14.1" + +# LABEL instructions tag the image with metadata that might be important to the user +LABEL base.image="ubuntu:focal" +LABEL dockerfile.version="1" +LABEL software="blast+" +LABEL software.version=$BLAST_VER +LABEL description="Finds matches in sequencing reads" +LABEL website="https://blast.ncbi.nlm.nih.gov/Blast.cgi?PAGE_TYPE=BlastDocs&DOC_TYPE=Download" +LABEL license="https://www.ncbi.nlm.nih.gov/IEB/ToolBox/CPP_DOC/lxr/source/scripts/projects/blast/LICENSE" +LABEL maintainer="Erin Young" +LABEL maintainer.email="eriny@utah.gov" + +RUN apt-get update && apt-get install -y --no-install-recommends \ + wget \ + ca-certificates \ + libgomp1 && \ + apt-get autoclean && rm -rf /var/lib/apt/lists/* + +# Install and/or setup more things. Make /data for use as a working dir +RUN wget https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/${BLAST_VER}/ncbi-blast-${BLAST_VER}+-x64-linux.tar.gz && \ + tar -xzf ncbi-blast-${BLAST_VER}+-x64-linux.tar.gz && \ + rm ncbi-blast-${BLAST_VER}+-x64-linux.tar.gz && \ + mkdir /data + +# ENV instructions set environment variables that persist from the build into the resulting image +# Use for e.g. $PATH and locale settings for compatibility with Singularity +ENV PATH="/ncbi-blast-${BLAST_VER}+/bin:$PATH" \ + LC_ALL=C + +# WORKDIR sets working directory +WORKDIR /data + +# default command is to pull up help options for virulencefinder +# yes, there are more tools than blastn, but it's likely the most common one used +CMD [ "blastn", "-help" ] + + + +# A second FROM insruction creates a new stage +# We use `test` for the test image +FROM app as test + +# getting all the exectubles in bin +RUN ls /ncbi-blast-*/bin/ + +# getting a genome +RUN mkdir db && \ + wget https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/000/005/845/GCF_000005845.2_ASM584v2/GCF_000005845.2_ASM584v2_genomic.fna.gz -P db && \ + gunzip db/GCF_000005845.2_ASM584v2_genomic.fna.gz && \ + makeblastdb -dbtype nucl -in db/GCF_000005845.2_ASM584v2_genomic.fna + +# getting a list of genes +RUN wget https://raw.githubusercontent.com/rrwick/Unicycler/main/unicycler/gene_data/dnaA.fasta + +# getting some blast results +RUN tblastn -query dnaA.fasta \ + -db db/GCF_000005845.2_ASM584v2_genomic.fna \ + -outfmt '6' \ + -out blast_hits.txt && \ + head blast_hits.txt From 76c48335f156a248d48554ed3989bee989437e56 Mon Sep 17 00:00:00 2001 From: Haikel Bogale <70728342+Haikelnb@users.noreply.github.com> Date: Tue, 24 Oct 2023 17:36:07 -0400 Subject: [PATCH 3/3] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index e5d6b0f1b..9542b26c2 100644 --- a/README.md +++ b/README.md @@ -117,7 +117,7 @@ To learn more about the docker pull rate limits and the open source software pro | [bcftools](https://hub.docker.com/r/staphb/bcftools/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/bcftools)](https://hub.docker.com/r/staphb/bcftools) | | https://github.com/samtools/bcftools | | [bedtools](https://hub.docker.com/r/staphb/bedtools/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/bedtools)](https://hub.docker.com/r/staphb/bedtools) | | https://bedtools.readthedocs.io/en/latest/
https://github.com/arq5x/bedtools2 | | [berrywood-report-env](https://hub.docker.com/r/staphb/berrywood-report-env/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/berrywood-report-env)](https://hub.docker.com/r/staphb/berrywood-report-env) | | none | -| [blast+](https://hub.docker.com/r/staphb/blast/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/blast)](https://hub.docker.com/r/staphb/blast) | | https://www.ncbi.nlm.nih.gov/books/NBK279690/ | +| [blast+](https://hub.docker.com/r/staphb/blast/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/blast)](https://hub.docker.com/r/staphb/blast) | | https://www.ncbi.nlm.nih.gov/books/NBK279690/ | | [bowtie2](https://hub.docker.com/r/staphb/bowtie2/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/bowtie2)](https://hub.docker.com/r/staphb/bowtie2) | | http://bowtie-bio.sourceforge.net/bowtie2/manual.shtml
https://github.com/BenLangmead/bowtie2 | | [BUSCO](https://hub.docker.com/r/staphb/busco/)
[![docker pulls](https://badgen.net/docker/pulls/staphb/busco)](https://hub.docker.com/r/staphb/busco) | | https://busco.ezlab.org/busco_userguide.html
https://gitlab.com/ezlab/busco | | [BWA](https://hub.docker.com/r/staphb/bwa)
[![docker pulls](https://badgen.net/docker/pulls/staphb/bwa)](https://hub.docker.com/r/staphb/bwa) | | https://github.com/lh3/bwa | @@ -313,3 +313,4 @@ Each Dockerfile lists the author(s)/maintainer(s) as a metadata `LABEL`, but the * [@cimendes](https://github.com/cimendes) * [@golden75](https://github.com/golden75) * [@Kincekara](https://github.com/Kincekara) + * [@Haikelnb](https://github.com/Haikelnb)