Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@

### Added

- skipper-clipper-compare 1.0.0 (`images/skipper-clipper-compare/1.0.0`): the
pinned Python/bedtools environment for skipper-clipper-snakemake's
Skipper-vs-CLIPper comparison, published as
`ghcr.io/yeolab/skipper-clipper-compare:1.0.0`.
- Singularity-first DRUID deployment and tutorial instructions for Dockerless
clusters, including the tested `sha-7941ba6aebf0fd4beb48643ec373374b50b02bbc`
image pull command.
Expand Down
27 changes: 27 additions & 0 deletions images/skipper-clipper-compare/1.0.0/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Environment for skipper-clipper-snakemake's compare_skipper_clipper.py:
# Skipper enriched windows vs CLIPper peaks (pandas, pybedtools/bedtools,
# scipy, matplotlib, seaborn, matplotlib-venn). The script itself lives in the
# workflow repository and is run inside this image by the workflow.

FROM mambaorg/micromamba:2.9.0-debian12-slim@sha256:edce84d758b6c3029cebdf2777d9cdfdd6e44f9eee0a31c6a09a7df14be17fd2

LABEL software="skipper-clipper-compare"
LABEL software.version="1.0.0"
LABEL about.summary="Python environment comparing Skipper enriched windows with CLIPper peaks"
LABEL about.url="https://github.com/byee4/skipper-clipper-snakemake"
LABEL about.tags="Genomics,eCLIP"

COPY --chown=$MAMBA_USER:$MAMBA_USER environment.yml /tmp/environment.yml
RUN micromamba install -y -n base -f /tmp/environment.yml \
&& micromamba clean --all --yes

# Tools resolve on PATH without micromamba's activating entrypoint, as they
# must when Snakemake runs this image through Singularity/Apptainer.
ENV PATH=/opt/conda/bin:$PATH \
MPLBACKEND=Agg

# Fail the build, not a pipeline job, if the environment is incomplete.
RUN python -c "import pandas, numpy, scipy, matplotlib, seaborn, matplotlib_venn, pybedtools; \
from pybedtools import BedTool; \
assert len(BedTool('chr1 1 9 a 0 +', from_string=True).sort()) == 1" \
&& bedtools --version
16 changes: 16 additions & 0 deletions images/skipper-clipper-compare/1.0.0/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# skipper-clipper-compare 1.0.0

Python environment for `workflow/scripts/compare_skipper_clipper.py` in
[skipper-clipper-snakemake](https://github.com/byee4/skipper-clipper-snakemake),
which compares Skipper enriched windows with CLIPper peaks. The image holds the
environment only; the workflow supplies the script.

Pinned in `environment.yml`: Python 3.12, bedtools 2.31.1, pybedtools 0.12.0,
pandas 2.2.3, numpy 2.2.6, scipy 1.15.2, matplotlib 3.10.3, seaborn 0.13.2, and
matplotlib-venn 1.1.2. Everything is on `PATH` without activation, so the image
works under Singularity/Apptainer:

```bash
apptainer exec docker://ghcr.io/yeolab/skipper-clipper-compare:1.0.0 \
python compare_skipper_clipper.py --help
```
14 changes: 14 additions & 0 deletions images/skipper-clipper-compare/1.0.0/environment.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: skipper-clipper-compare
channels:
- conda-forge
- bioconda
dependencies:
- python=3.12
- bedtools=2.31.1
- pybedtools=0.12.0
- pandas=2.2.3
- numpy=2.2.6
- scipy=1.15.2
- matplotlib-base=3.10.3
- seaborn-base=0.13.2
- matplotlib-venn=1.1.2
Loading