Sequencing Docker Stacks#

Read the Docs Badge GitHub Actions Badge pre-commit.ci status Binder Badge

Ready-to-use analysis environments for your sequencing data.

Sequencing Docker Stacks provide pre-configured, reproducible environments for analyzing sequencing data.

Who Should Use This?#

This project is for you if you:

  • Analyze sequencing data (RNA-seq, single-cell, spatial transcriptomics, multi-omics)

  • Want a reproducible environment without manually installing dozens of bioinformatics tools

  • Need to run analysis on different computers (your laptop, HPC cluster, cloud) with the same setup

  • Collaborate with others and want everyone using the same software versions

  • Are new to bioinformatics and overwhelmed by software installation and dependency management

What’s Inside? Choose Your Container#

Each container is a complete analysis environment with Jupyter notebooks, Python, R, and specialized bioinformatics tools. All containers run on both x86_64 (Intel/AMD) and aarch64 (ARM/Apple Silicon) architectures.

Data Science — data-notebook#

Best for: General data science work with Python and R, data visualization, statistical analysis

Key Tools:

  • Python scientific stack (NumPy, pandas, scikit-learn, matplotlib)

  • R with tidyverse and essential packages

  • Common data science libraries for both languages

  • Jupyter notebook extensions for enhanced productivity

Sequencing Base — sequencing-base-notebook#

Best for: Foundation for bioinformatics workflows, provides common dependencies for sequencing analysis

Key Tools:

  • All tools from data-notebook

  • Bioinformatics Python packages (biopython, pybiomart)

  • R/Bioconductor packages for genomic analysis (DESeq2, fgsea)

  • Base layer for specialized sequencing notebooks (RNA-seq, single-cell, etc.)

RNA-seq Analysis — rnaseq-notebook#

Best for: Bulk RNA sequencing analysis, differential gene expression, gene set enrichment

Key Tools:

  • DESeq2 — differential expression analysis

  • R/Bioconductor ecosystem for statistical analysis

  • Data visualization tools (ggplot2, heatmaps, volcano plots)

Single-Cell Analysis — singlecell-notebook#

Best for: Single-cell RNA-seq (scRNA-seq), cell type identification, trajectory analysis

Key Tools:

  • Scanpy — Python-based single-cell analysis

  • Seurat — R-based single-cell analysis

  • Dimensionality reduction (UMAP, t-SNE, PCA)

  • Cell clustering and annotation tools

Single-Cell Analysis with Latest R — singlecell-r-notebook#

Best for: R-centric single-cell analysis workflows using the most recent R packages from Bioconductor

Key Differences:

  • Built directly on jupyter/datascience-notebook to bypass bioconda’s lag behind Bioconductor

  • R packages pinned to r-base>=4.5 for latest R features and package versions

  • R packages installed directly from Bioconductor rather than bioconda channel

  • All dependencies from data, sequencing-base, and singlecell notebooks included

Spatial Transcriptomics — spatial-notebook#

Best for: Spatial RNA-seq, tissue architecture, spatial patterns

Key Tools:

  • Squidpy — Spatial single-cell analysis

  • SpatialData — Spatial omics data handling

  • Spatial statistics and neighborhood analysis

  • Image processing capabilities

Multi-Omics Integration — multiomics-notebook#

Best for: Multi-modal data integration, CITE-seq, ATAC+RNA, multi-assay experiments

Key Tools:

  • MOFA2 — Multi-Omics Factor Analysis

  • muon — Multi-modal omics analysis

  • Integration of transcriptomics, epigenomics, and proteomics

  • Factor analysis and dimensionality reduction across modalities

Getting Started#

Try Without Installing — Use Binder#

Want to try it first? You can explore a live notebook environment in your browser without installing anything!

Click the Binder badge at the top of this page or use this link: Binder

This will launch a JupyterLab environment running the singlecell-notebook container on mybinder.org. You’ll get a temporary workspace to experiment with single-cell analysis tools like Scanpy and Seurat.

Note: Binder sessions are temporary and have limited resources. For real analysis work, follow the installation steps below to run containers on your own computer.

Launch Your First Analysis Environment#

Here’s how to start a Jupyter notebook environment for single-cell analysis:

docker run -it --rm -p 8888:8888 -v "${PWD}":/home/jovyan/work quay.io/huchlab/singlecell-notebook:2026-01-20

What this command does:

  • docker run — Start a new container

  • -it — Interactive mode (you can stop with Ctrl+C)

  • --rm — Clean up the container when you’re done

  • -p 8888:8888 — Access Jupyter at http://localhost:8888

  • -v "${PWD}":/home/jovyan/work — Mount your current directory (your data will be in the work folder)

  • quay.io/huchlab/singlecell-notebook:2026-01-20 — The container image to use. Here, 2026-01-20 is the version of the container. See Choose Specific Versions below for information on selecting specific image versions.

After running this command:

  1. Look for a URL in the terminal output that looks like:

    http://127.0.0.1:8888/lab?token=abc123...
    
  2. Copy and paste this URL into your web browser

  3. You’ll see JupyterLab with all tools pre-installed!

  4. Your files from the current directory will be available in the work folder

Choose a Different Container#

Replace singlecell-notebook with your preferred container:

# For data science work
docker run -it --rm -p 8888:8888 -v "${PWD}":/home/jovyan/work quay.io/huchlab/data-notebook:2026-01-20

# For sequencing analysis base (foundation for bioinformatics)
docker run -it --rm -p 8888:8888 -v "${PWD}":/home/jovyan/work quay.io/huchlab/sequencing-base-notebook:2026-01-20

# For RNA-seq analysis
docker run -it --rm -p 8888:8888 -v "${PWD}":/home/jovyan/work quay.io/huchlab/rnaseq-notebook:2026-01-20

# For single-cell analysis with latest R packages
docker run -it --rm -p 8888:8888 -v "${PWD}":/home/jovyan/work quay.io/huchlab/singlecell-r-notebook:2026-01-20

# For spatial transcriptomics
docker run -it --rm -p 8888:8888 -v "${PWD}":/home/jovyan/work quay.io/huchlab/spatial-notebook:2026-01-20

# For multi-omics integration
docker run -it --rm -p 8888:8888 -v "${PWD}":/home/jovyan/work quay.io/huchlab/multiomics-notebook:2026-01-20

Using Apptainer/Singularity Images#

For HPC environments that use Apptainer (formerly Singularity) instead of Docker, we provide pre-built Apptainer images on quay.io. These images have the same tools and configurations as the Docker versions, with /opt/conda made writable for all users so you can install additional packages at runtime.

Note: Apptainer/Singularity images are available for x86_64 architecture only.

Example usage:

apptainer run oras://quay.io/huchlab/singlecell-singularity:2026-01-22

or with singularity:

singularity run oras://quay.io/huchlab/singlecell-singularity:2026-01-22

All available images work with Apptainer:

  • rnaseq-singularity

  • singlecell-singularity

  • singlecell-r-singularity

  • spatial-singularity

  • multiomics-singularity

  • sequencing-base-singularity

Tags are the same as for Docker images.

Choose Specific Versions#

Images are tagged with dates and commit hashes for reproducibility. To view all available tags for a specific image:

Alternatives#

Next Steps#

Learn More About Jupyter and Docker#

If you’re new to Jupyter or Docker containers, we recommend exploring the jupyter/docker-stacks documentation for detailed explanations of:

  • How Jupyter servers work

  • Advanced Docker options (resource limits, environment variables)

  • Running containers in different environments (cloud, HPC)

  • Security best practices

See What’s Installed#

Each container comes with dozens of pre-installed tools. For complete lists of installed software and versions, visit the build manifests in our wiki.

Need Help?#

  • Open an issue on GitHub

  • Check existing issues for common problems

  • Provide your Docker version and OS when reporting issues

About This Project#

These containers are built on the jupyter/docker-stacks foundation and incorporates experience from the Singularity Single Cell container.

Development#

GitHub Copilot Integration#

This repository includes GitHub Copilot reference configuration to assist contributors with AI-assisted development. The configuration files are located in .github/copilot/ and provide:

  • Repository-specific context and guidelines

  • Technical knowledge about the project structure

  • Code style and testing preferences

  • Common development workflows

These files serve as a reference for contributors using GitHub Copilot or other AI assistants. For more information about the Copilot setup, see .github/copilot/README.md.

LICENSE#

This project is licensed under the terms of the Modified BSD License (also known as New or Revised or 3-Clause BSD).

Issue Tracker on GitHub <huchlab/sequencing-docker-stacks#issues>