-
Notifications
You must be signed in to change notification settings - Fork 125
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1112 from fraser-combe/fc-dnaapler
add dnaapler version 1.0.1
- Loading branch information
Showing
3 changed files
with
115 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
# Base image: micromamba for Conda support | ||
FROM mambaorg/micromamba:1.5.8 AS app | ||
|
||
USER root | ||
|
||
WORKDIR / | ||
|
||
# Set the DnaApler version | ||
ARG DNAAPLER_VER="1.0.1" | ||
|
||
# Metadata labels | ||
LABEL base.image="mambaorg/micromamba:1.5.8" | ||
LABEL dockerfile.version="1" | ||
LABEL software="dnaapler" | ||
LABEL software.version="${DNAAPLER_VER}" | ||
LABEL description="Rotates chromosomes and more" | ||
LABEL website="https://github.com/gbouras13/dnaapler" | ||
LABEL license="MIT" | ||
LABEL license.url="https://github.com/gbouras13/dnaapler/blob/main/LICENSE" | ||
LABEL maintainer="Fraser Combe" | ||
LABEL maintainer.email="[email protected]" | ||
|
||
# Install dependencies; clean up APT garbage | ||
RUN apt-get update && apt-get install -y --no-install-recommends \ | ||
wget \ | ||
ca-certificates \ | ||
procps && \ | ||
apt-get autoclean && rm -rf /var/lib/apt/lists/* | ||
|
||
# Create the conda environment, install dnaapler via bioconda package; clean up micromamba garbage | ||
RUN micromamba create -n dnaapler -y -c conda-forge -c bioconda dnaapler=${DNAAPLER_VER} && \ | ||
micromamba clean -a -f -y | ||
|
||
# Set PATH and LC_ALL for compatibility | ||
ENV PATH="/opt/conda/envs/dnaapler/bin/:${PATH}" \ | ||
LC_ALL=C.UTF-8 | ||
|
||
# Set working directory to /data | ||
WORKDIR /data | ||
|
||
# Default command to display help | ||
CMD [ "dnaapler", "--help" ] | ||
|
||
# New stage for testing | ||
FROM app AS test | ||
|
||
# Set working directory to /test | ||
WORKDIR /test | ||
|
||
# Test the tool installation and functionality | ||
RUN dnaapler --help && dnaapler --version | ||
|
||
# Download test genome and run DnaApler commands | ||
RUN wget -q https://ftp.ncbi.nlm.nih.gov/genomes/all/GCA/025/259/185/GCA_025259185.1_ASM2525918v1/GCA_025259185.1_ASM2525918v1_genomic.fna.gz && \ | ||
gunzip GCA_025259185.1_ASM2525918v1_genomic.fna.gz && \ | ||
grep "CP104365.1" GCA_025259185.1_ASM2525918v1_genomic.fna -A 50000 > CP104365.1.fasta && \ | ||
dnaapler mystery --prefix mystery_test --output mystery_test -i CP104365.1.fasta && \ | ||
dnaapler plasmid --prefix plasmid_test --output plasmid_test -i CP104365.1.fasta && \ | ||
ls mystery_test plasmid_test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
# dnaapler container | ||
|
||
Main tool : [dnappler](https://github.com/gbouras13/dnaapler) | ||
|
||
Full documentation: [https://github.com/gbouras13/dnaapler](https://github.com/gbouras13/dnaapler) | ||
|
||
> `dnaapler` is a simple python program that takes a single nucleotide input sequence (in FASTA format), finds the desired start gene using MMSeqs2, checks that the start codon of this gene is found, and if so, then reorients the chromosome to begin with this gene on the forward strand. | ||
Note: As of v1.0.0, 'dnaapler' uses MMSeqs2 v13.45111 instead of BLAST for sequence alignment. MMSeqs2 is faster and compatible across platforms, including MacOS with Apple Silicon. | ||
|
||
dnaapler has several commands for chromosomes, plasmids, and more. | ||
|
||
``` | ||
Usage: dnaapler [OPTIONS] COMMAND [ARGS]... | ||
Options: | ||
-h, --help Show this message and exit. | ||
-V, --version Show the version and exit. | ||
Commands: | ||
all Reorients contigs to begin with any of dnaA, repA, terL, or... | ||
archaea Reorients your genome to begin with the archaeal COG1474... | ||
bulk Reorients multiple genomes to begin with the same gene. | ||
chromosome Reorients your genome to begin with the dnaA chromosomal... | ||
citation Print the citation(s) for this tool. | ||
custom Reorients your genome with a custom database. | ||
mystery Reorients your genome with a random CDS. | ||
nearest Reorients your genome to begin with the first CDS as... | ||
phage Reorients your genome to begin with the terL large... | ||
plasmid Reorients your genome to begin with the repA replication... | ||
``` | ||
|
||
WARNING: Does not support multifasta files. Each sequence must be processed individually. | ||
|
||
## Example Usage | ||
|
||
```bash | ||
# Reorienting for a fasta of a chromsome sequence | ||
dnaapler chromosome --input chromosome.fasta --output dnaapler_chr | ||
|
||
# Reorienting for a fasta of a plasmid sequence | ||
dnaapler plasmid --input plasmid.fasta --output dnaapler_plasmid | ||
|
||
# Reorienting Mixed Contigs | ||
dnaapler all -i input_mixed_contigs.fasta -o output_directory_path -p my_bacteria_name | ||
``` | ||
|
||
## Additional tools/dependencies | ||
|
||
- biopython 1.78 | ||
- python 3.11.10 | ||
- pandas 2.2.2 | ||
- numpy 1.26.4 | ||
- mmseqs2 13.45111 | ||
- pyrodigal 3.6.3 |