Sign inSign up

lunnwa/snowa

By lunnwa

•Updated 3 months ago

Dependencies for the SNOWa genomic surveillance pipeline for SC2 Freyja WW seq data results

Image
Data science
0

946

lunnwa/snowa repository overview

⁠SNOWa Genomic Surveillance Environment

Docker Pulls Base Image

This container provides the standardized data science environment required to run SNOWa, a genomic surveillance pipeline for SARS-CoV-2 wastewater genomic surveillance reporting using Freyja sequencing data results.

docker pull lunnwa/snowa:latest

⁠🔬 Purpose & Use Case

Wastewater genomic sequencing requires specific, pinned data science package versions to ensure reproducible variant tracking and automated public health reporting. This image packages Python 3.10 along with geospatial and visualization libraries to eliminate local dependency conflicts during pipeline execution.


⁠🚀 Pipeline Integration (Intended Workflow Execution)

This container is designed to serve as the automated runtime environment for the SNOWa workflow via Snakemake. Snakemake handles the image download, conversion, and environment management automatically behind the scenes using Singularity.

⁠1. Configure the Workflow

To point the pipeline to this environment, specify the container image within your defaults/config.yaml file:

containerized: "docker://lunnwa/snowa:latest"
⁠2. Execute the Pipeline

Run the workflow from your terminal workspace. The --use-singularity flag tells Snakemake to pull this image, convert it to a Singularity container, and execute the execution steps inside this environment:

snakemake --cores 6 --use-singularity

⁠💻 Standalone Execution (Testing & Debugging)

Because this container acts as the runtime environment for the SNOWa pipeline scripts. For testing with customized scripts, you must mount your local analysis scripts and data paths when running it outside of the Snakemake pipeline.

⁠1. Interactive Shell (Testing & Debugging)

Launch an interactive shell inside the environment to manually test your pipeline scripts or inspect the environment:

docker run -it \
  --name snowa-env-test \
  -v /absolute/path/to/your/scripts:/app \
  -v /absolute/path/to/your/data:/data \
  lunnwa/snowa:latest /bin/bash

(Note: Replace /absolute/path/to/your/... with the real folder locations on your server or computer).

⁠2. Run a Script Directly

Execute an automated SNOWa reporting run directly from your terminal workspace without opening an interactive shell:

docker run --rm \
  -v \$(pwd):/workspace \
  -w /workspace \
  lunnwa/snowa:latest python your_script_name.py

⁠📦 Environment Specifications

The environment is built on Ubuntu 22.04 and pinned to the following core software versions, with additional reporting dependencies included for automated markdown-to-PDF report generation.

ComponentVersionPurpose
Base OSUbuntu 22.04 LTSCore Linux operating system layer
Python3.10Core pipeline runtime language
Pandas2.3.3Matrix manipulation & sequence counts
NumPy2.2.6Numerical data vector array calculations
GeoPandas1.1.1Geospatial and map layer calculations
Altair5.5.0Declarative statistical visualizations
Matplotlib3.10.7Static figure generation engine
Seaborn0.13.2Data visualization matrices
Snakemake7.32.4Workflow execution and pipeline orchestration
PuLP2.7.0Snakemake compatibility dependency
Jinja23.1.6Report template rendering
PyYAML6.0.3YAML configuration parsing
mistletoe1.5.1Markdown parsing for report generation
fpdf22.8.7PDF report generation

⁠🧑‍💻 Maintainer Information

  • Maintainer: Steph M Lunn, MPH, MS
  • Agency: Washington State Department of Health (DOH)
  • Contact Email: [email protected]⁠

Tag summary

Content type

Image

Digest

sha256:ebc93281d…

Size

488.2 MB

Last updated

3 months ago

docker pull lunnwa/snowa