Run the complete E. coli typing pipeline with zero installation – just Docker.
EcoliTyper is a comprehensive bioinformatics pipeline for complete genomic characterization of Escherichia coli. It integrates nine core typing analyses into a single automated workflow:
Perfect for clinical microbiology, outbreak investigations, and genomic surveillance.
📖 Full documentation, examples, and Conda installation instructions are available on the GitHub repository:
👉 https://github.com/bbeckley-hub/EcoliTyper
abricate --setupdb already run)docker pull bbeckleyhub/ecolityper:latest
docker run --rm \
-u $(id -u):$(id -g) \
-v "$(pwd):/data" \
bbeckleyhub/ecolityper:latest \
-i "/data/genome.fna" -o /data/results
Why -u $(id -u):$(id -g)?
It ensures that all output files are owned by your host user – no sudo chown needed, no padlock icons.
docker run --rm \
-u $(id -u):$(id -g) \
-v "$(pwd):/data" \
bbeckleyhub/ecolityper:latest \
-i "/data/*.fna" -o /data/results --threads 8
docker run --rm \
-u $(id -u):$(id -g) \
-v "$(pwd):/data" \
bbeckleyhub/ecolityper:latest \
[ECOLITYPER_OPTIONS]
| Flag | Purpose |
|---|---|
--rm | Remove container after exit |
-u $(id -u):$(id -g) | Run as your host user (no permission issues) |
-v "$(pwd):/data" | Mount current directory to /data inside container |
| Input files | Must be under /data (e.g., /data/*.fna) |
| Output directory | Must also be under /data (e.g., /data/results) |
docker run --rm \
-u $(id -u):$(id -g) \
-v "$(pwd):/data" \
bbeckleyhub/ecolityper:latest \
-i "/data/*.fna" -o /data/results \
--threads 8 --skip-visualization
docker run --rm \
-u $(id -u):$(id -g) \
-v "$(pwd):/data" \
bbeckleyhub/ecolityper:latest \
-i "/data/*.fna" -o /data/results -t 16
docker run --rm \
-u $(id -u):$(id -g) \
-v "$(pwd):/data" \
bbeckleyhub/ecolityper:latest \
-i "/data/*.fna" -o /data/results \
--amr-min-identity 0.95 --amr-min-coverage 0.9 --skip-amr-mutations
docker run --rm \
-u $(id -u):$(id -g) \
-v "$(pwd):/data" \
bbeckleyhub/ecolityper:latest \
-i "/data/*.fna" -o /data/results --amr-force-update
docker run --rm bbeckleyhub/ecolityper:latest --update-amr-db # incremental
docker run --rm bbeckleyhub/ecolityper:latest --force-update-amr-db # full overwrite
By default, Docker runs as root inside the container. Any files written to your mounted directory will be owned by root:root.
Here's how to avoid it:
docker run --rm \
-u $(id -u):$(id -g) \
-v "$(pwd):/data" \
bbeckleyhub/ecolityper:latest \
-i "/data/*.fna" -o /data/results
All output files are owned by your user – no sudo needed.
sudo chown -R $USER:$USER ./results
docker run --rm bbeckleyhub/ecolityper:latest -h
docker run --rm --entrypoint /bin/bash bbeckleyhub/ecolityper:latest -c "abricate --list | head -5"
Expected output: list of databases (ncbi, card, vfdb, etc.)
sudo, correct ownership)On HPC clusters that support Singularity/Apptainer, you can run EcoliTyper without sudo and output files will be owned by your user automatically.
singularity pull ecolityper.sif docker://bbeckleyhub/ecolityper:latest
singularity run --writable-tmpfs -B $(pwd):/data ecolityper.sif \
-i "/data/*.fna" -o /data/results
If you encounter network errors, convert an existing Docker image on a machine with Docker:
docker pull bbeckleyhub/ecolityper:latest
docker save bbeckleyhub/ecolityper:latest -o ecolityper.tar
singularity build ecolityper.sif docker-archive://ecolityper.tar
Transfer ecolityper.sif to your HPC and run:
singularity run --writable-tmpfs -B $(pwd):/data ecolityper.sif \
-i "/data/*.fna" -o /data/results --threads 8
| Flag | Purpose |
|---|---|
--writable-tmpfs | Creates a temporary writable overlay – required for EcoliTyper to write intermediate files |
-B $(pwd):/data | Binds your current directory to /data inside the container |
-i "/data/*.fna" | Input pattern – use quotes to prevent shell expansion on the host |
-o /data/results | Output directory (will appear as ./results on your host) |
After a successful run, your output directory will contain:
results/
├── abricate_results/ # Multi‑database screening (10 DBs)
├── amrfinder_results/ # NCBI AMRFinderPlus + mutation reports
├── chtyper_results/ # High‑resolution CH typing (FumC:FimH)
├── mlst_results/ # Multi‑Locus Sequence Typing
├── phylogrouping_results/ # Clermont phylogrouping
├── serotyping_results/ # O:H antigen determination
├── lineage_results/ # EcoliDB lineage reference
├── summary_results/ # 🧠 MAIN REPORT: genius_ecoli_ultimate_report.html
├── visualization_results/ # Publication‑ready charts (PNG, SVG, PDF)
└── ecolityper_run.log # Detailed run log
The only file you need is
summary_results/genius_ecoli_ultimate_report.html– a complete interactive dashboard.
EcoliTyper integrates several powerful open‑source tools and databases:
| Tool/Database | Purpose | License |
|---|---|---|
| MLST | Multi‑locus sequence typing | GPL v2 |
| ABRicate | Mass screening for resistance/virulence | GPL v2 |
| AMRFinderPlus | AMR gene detection + mutations | Public Domain |
| SerotypeFinder | O:H antigen typing | Apache 2.0 |
| CHTyper DB | fumC/fimH typing | Free for research |
| ezClermont | Phylogrouping | MIT |
| CARD, ResFinder, VFDB, etc. | Databases (via ABRicate) | Free for research |
EcoliTyper reports are structured for easy AI analysis.
genius_ecoli_ultimate_report.html in your browserEcoliTyper includes EcoliDB, a manually curated reference of high‑risk E. coli clones (ST131, ST1193, ST95, etc.) with pathotype, serotype, phylogroup, and risk level. The database is automatically generated as lineage_results/ecoli_comprehensive_reference.html.
| Scenario | Genomes | Time | Hardware |
|---|---|---|---|
| Standard Workstation | 30 | 80‑150 min | 2 cores, 8GB RAM |
| High‑Performance Server | 30 | 41 min | 16 cores, 16GB RAM |
| Single Genome | 1 | 1‑6 min | Variable |
Validation: 100% concordance with standalone tools (mlst, SerotypeFinder, ezClermont).
If you use EcoliTyper in your research, please cite the main paper:
Beckley B, Amarh V. EcoliTyper: a species‑optimized computational pipeline for comprehensive genotyping and surveillance of Escherichia coli. BMC Bioinformatics. 2026.
DOI: 10.1186/s12859-026-06529-6
When publishing results obtained with EcoliTyper, please also cite the relevant third‑party tools:
Q: Why are output files owned by root?
A: Docker containers run as root by default. Use -u $(id -u):$(id -g) to fix this.
Q: Can I use --user with the Docker command?
A: Yes! The recommended command uses -u $(id -u):$(id -g) – it works perfectly.
Q: How large is the image?
A: Approximately 5.4 GB (includes Conda, all dependencies, and ABRicate databases).
Q: Can I run this on Windows / macOS?
A: Yes, with Docker Desktop. Mount paths must be absolute (e.g., -v /c/Users/name/data:/data on Windows Git Bash).
Q: Does it work on ARM (Apple Silicon)?
A: The image is built for linux/amd64. On Apple Silicon, Docker will use emulation (may be slower).
Q: How do I update AMR databases?
A: Run docker run --rm bbeckleyhub/ecolityper:latest --update-amr-db.
Q: Where is the main report?
A: summary_results/genius_ecoli_ultimate_report.html – open in any browser.
Q: Can I use the HTML report with ChatGPT/Claude?
A: Yes – upload the HTML file and ask questions about your data.
EcoliTyper core code is MIT licensed. Third‑party tools (MLST, ABRicate, AMRFinderPlus, SerotypeFinder, etc.) are subject to their own licenses (GPL, Apache, Public Domain, etc.). By using EcoliTyper you agree to comply with those licenses.
Brown Beckley – Creator & Lead Developer
University of Ghana Medical School & KNUST
📧 [email protected]
Dr. Vincent Amarh – Lead Advisor
University of Ghana Medical School
Transforming fragmented genomic surveillance into integrated public health intelligence 🧬✨
"From sequences to surveillance in one command"
Join the Fight Against Antimicrobial Resistance
We invite researchers, clinicians, and public health professionals to collaborate – share regional epidemiological data, validate the database, and advance AMR surveillance together.
Content type
Image
Digest
sha256:153de0703…
Size
1.3 GB
Last updated
2 months ago
docker pull bbeckleyhub/ecolityper