Docker image that packages several tools developed by the BIONF group into a single portable and reproducible environment.
The container allows users to run these tools without manually installing dependencies, making it suitable for:
- local development
- reproducible research
- HPC environments
- cloud platforms (e.g. AWS)
Currently included tools:
- bionf_utilities
- Table of Contents
- Requirements
- Quick Start
- Using Apptainer (recommended)
- Using Docker
- How to Maintain the Image
- Testing Using AWS
You need one of the following container runtimes:
Pull the container and run a BIONF tool immediately.
docker pull trvinh/bionf_utilities
docker run --platform linux/amd64 -it trvinh/bionf_utilities
Example:
fas.doAnno -i test_annofas.fa -o test_fas
apptainer pull docker://trvinh/bionf_utilities:latest
apptainer exec -e bionf_utilities_latest.sif fas.doAnno -i test_annofas.fa -o test_fas
Note: for Linux only
Apptainer is recommended for HPC clusters because it allows users to run containers without requiring root privileges.
Example installation using mamba:
mamba create -n apptainer apptainer
mamba activate apptainer
apptainer pull docker://trvinh/bionf_utilities:latest
This command downloads the Docker image and converts it into an Apptainer image file:
bionf_utilities_latest.sif
General syntax:
apptainer exec -e bionf_utilities_latest.sif <command>
Example:
FAS annotation
fas.doAnno -i test_annofas.fa -o test_fas
fDOG
fdog.run --seqFile infile.fa --jobName test --refspec HUMAN@9606@qfo24_02
The image is hosted on Docker Hub:
https://hub.docker.com/r/trvinh/bionf_utilities
Pull it using:
docker pull trvinh/bionf_utilities
docker run --platform linux/amd64 -it trvinh/bionf_utilities
Alternatively, you can run the container using the Docker Desktop dashboard and open a CLI session.
Once inside the container, the BIONF tools can be used directly.
Example:
FAS annotation
fas.doAnno -i test_annofas.fa -o test_fas
fDOG
fdog.run --seqFile infile.fa --jobName test --refspec HUMAN@9606@qfo24_02
- List containers
docker ps -a
- Stop a container
docker stop <container_id>
- Remove a container
docker rm <container_id>
To free disk space you can remove the Docker image.
- List images
docker image ls
- Remove image
docker rmi <image_id>
Follow these steps if you want to modify or rebuild the container.
git clone <repository_url>
cd bionf_utilities
Update the following files as needed:
Dockerfile
dependencies.txt
tools.txt
These files define:
- installed dependencies
- installed BIONF tools
- container configuration
docker build . -t trvinh/bionf_utilities[:0.1.2] --platform linux/amd64 --progress=plain
Notes:
- Replace
trvinhwith your Docker Hub username. :0.1.2defines the image tag.- If no tag is provided, Docker automatically assigns the
latesttag.
docker push trvinh/bionf_utilities[:0.1.2]
More details are available in the Docker documentation:
https://docs.docker.com/docker-hub/repos/
Check disk usage:
docker system df
Remove unused build cache:
docker buildx prune
This helps free disk space after building and pushing images.
Or using this one-line "nuclear clean" command
docker system prune -a --volumes -f
Verify Docker is empty
docker system df
Instructions for testing this container on AWS can be found here:
https://gist.github.com/trvinh/475f66d40e13dddcb9a40292c8892d93