Skip to content
Snippets Groups Projects
Commit a02cd436 authored by Alex Kanitz's avatar Alex Kanitz
Browse files

build: add Dockerfile

parent a3ab4a7e
No related branches found
No related tags found
1 merge request!2build: add Dockerfile
##### BASE #####
FROM rocker/r-ver:4.2.1
##### METADATA #####
MAINTAINER zavolab-biozentrum@unibas.ch
LABEL base.image="rocker/r-ver:4.2.1"
LABEL version="1"
LABEL software="ascii_alignment_pileup.R"
LABEL software.version="1.0.1"
LABEL software.description="Generates an ASCII-style pileup of read alignments in one or more BAM files against one or more regions specified in a BED file"
LABEL software.website="https://git.scicore.unibas.ch/zavolan_group/tools/ascii-alignment-pileup"
LABEL software.documentation="https://git.scicore.unibas.ch/zavolan_group/tools/ascii-alignment-pileup"
LABEL software.license="https://spdx.org/licenses/Apache-2.0"
LABEL software.tags="bioinformatics"
LABEL maintainer="zavolab-biozentrum@unibas.ch"
LABEL maintainer.organisation="Biozentrum, University of Basel"
LABEL maintainer.location="Spitalstrasse 41, CH-4056 Basel, Switzerland"
LABEL maintainer.lab="Zavolab"
LABEL maintainer.license="https://spdx.org/licenses/Apache-2.0"
##### INSTALL #####
RUN \
apt-get update -y \
&& apt-get install -y --no-install-recommends \
apt-transport-https \
curl \
libbamtools-dev \
libbz2-dev \
libcurl4-gnutls-dev \
liblzma-dev \
libssl-dev \
libxml2-dev \
software-properties-common \
zlib1g-dev \
&& apt-get autoremove -y \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN \
install2.r \
--error \
--skipinstalled \
-r "https://cran.rstudio.com" \
-r "http://www.bioconductor.org/packages/release/bioc" \
-r "https://bioconductor.org/packages/3.15/data/annotation" \
optparse \
rtracklayer \
&& rm -rf /tmp/downloaded_packages/
##### VARIABLES #####
ARG WORKDIR="/home/bioc/"
ARG USER="bioc"
ARG GROUP="bioc"
ENV PATH="${WORKDIR}:${PATH}"
##### COPY #####
COPY ./ascii_alignment_pileup.R ${WORKDIR}
COPY ./tests ${WORKDIR}/tests
##### USER #####
RUN groupadd -r ${GROUP} && useradd --no-log-init -r -g ${GROUP} ${USER}
##### ENVIRONMENT #####
WORKDIR ${WORKDIR}
RUN chown -R ${USER}:${GROUP} ${WORKDIR} \
&& chmod 700 ${WORKDIR}
USER ${USER}
......@@ -13,11 +13,17 @@ ascii_alignment_pileup.R [-hv] [OPTIONS] bed bam [bam2 ...]
## Requirements
* R 3.6.0
* GenomicAlignments 1.20.0
* optparse 1.6.2
* rtracklayer 1.44.0
* tools 3.6.0
* `R` 3.6.0 / 4.2.1
* `optparse` 1.6.2 / 1.7.1
* `rtracklayer` 1.44.0 / 1.56.1
The script was successfully tested with the indicated versions. Other versions
may work as well, but have not been tested.
For convenience, you can build a container with all required software from the
provided `Dockerfile` with `docker build .`. Alternatively, you can also pull a
prebuilt Docker image from
<https://hub.docker.com/repository/docker/zavolab/ascii-alignment-pileup>.
## Input files
......
......@@ -12,33 +12,6 @@
#==================#
#========================#
# SESSION INFO START #
#========================#
# TESTED WITH:
#
# R version 3.6.0 (2019-04-26)
# Platform: x86_64-pc-linux-gnu (64-bit)
# Running under: CentOS Linux 7 (Core)
#
# attached base packages:
# [1] tools stats4 parallel stats graphics grDevices utils
# [8] datasets methods base
#
# other attached packages:
# [1] GenomicAlignments_1.20.0 Rsamtools_2.0.0
# [3] SummarizedExperiment_1.14.0 DelayedArray_0.10.0
# [5] BiocParallel_1.18.0 matrixStats_0.54.0
# [7] Biobase_2.44.0 rtracklayer_1.44.0
# [9] GenomicRanges_1.36.0 GenomeInfoDb_1.20.0
# [11] Biostrings_2.52.0 XVector_0.24.0
# [13] IRanges_2.18.0 S4Vectors_0.22.0
# [15] BiocGenerics_0.30.0 optparse_1.6.2
#========================#
# SESSION INFO END #
#========================#
#==========================#
# PRE-REQUISITES START #
#==========================#
......@@ -56,7 +29,7 @@ against one or more regions specified in a BED file.\n"
author <- "Author: Alexander Kanitz"
affiliation <- "Affiliation: Biozentrum, University of Basel"
email <- "Email: alexander.kanitz@alumni.ethz.ch"
version <- "Version: 1.0.1 (29-SEP-2019)"
version <- "Version: 1.0.2"
requirements <- c("optparse", "rtracklayer", "GenomicAlignments", "tools")
requirements_txt <- paste("Requires:", paste(requirements, collapse=", "), sep=" ")
msg <- paste(description, author, affiliation, email, version, requirements_txt, sep="\n")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment