Diff of /Dockerfile [000000] .. [413088]

Switch to side-by-side view

--- a
+++ b/Dockerfile
@@ -0,0 +1,88 @@
+# Start from the RStudio base image
+FROM rocker/rstudio:latest
+
+# dependencies
+RUN apt-get update
+RUN apt-get install -y libgdal-dev libfftw3-dev libmagick++-dev cmake libhdf5-dev git libopencv-dev libopencv-features2d-dev  
+RUN apt-get install -y libssl-dev libcurl4-openssl-dev libgit2-dev libxml2-dev libfontconfig1-dev libharfbuzz-dev libfribidi-dev libfreetype6-dev libpng-dev libtiff5-dev libjpeg-dev libz-dev
+
+# OpenCV
+RUN wget https://github.com/opencv/opencv/archive/refs/tags/4.8.1.zip
+RUN unzip 4.8.1.zip
+RUN rm 4.8.1.zip
+RUN wget https://github.com/opencv/opencv_contrib/archive/refs/tags/4.8.1.zip
+RUN unzip 4.8.1.zip
+RUN rm 4.8.1.zip
+RUN mkdir build
+WORKDIR "build"
+RUN cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON  -D OPENCV_GENERATE_PKGCONFIG=ON -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.8.1/modules/  -D BUILD_opencv_xfeatures2d=ON ../opencv-4.8.1/
+RUN make -j5
+RUN make install
+RUN sh -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
+RUN ldconfig
+
+# Install required R packages
+RUN R -e "install.packages(c('shiny', 'devtools', 'BiocManager'), repos='http://cran.rstudio.com/')"
+
+# Install VoltRon dependencies
+RUN R -e "install.packages(c('grDevices', 'data.table', 'RcppAnnoy', 'RANN', 'Matrix', 'dplyr', 'ggplot2', 'ggrepel', 'igraph', 'irlba', 'rjson', 'magick', 'ids', 'sp', 'reshape2', 'rlang', 'ggpubr', 'shinyjs'), repos='http://cran.rstudio.com/')"
+RUN R -e "install.packages(c('stringr', 'uwot', 'RCDT'), repos='http://cran.rstudio.com/')"
+RUN R -e "BiocManager::install(c('EBImage', 'S4Arrays'))"
+
+# Install Suggested dependencies
+RUN R -e "BiocManager::install(c('DelayedArray'))"
+RUN R -e "BiocManager::install(c('HDF5Array'))"
+RUN R -e "remotes::install_github('bnprks/BPCells/r@v0.3.0')"
+RUN R -e "remotes::install_github('BIMSBbioinfo/ImageArray')"
+RUN R -e "remotes::install_github('BIMSBbioinfo/HDF5DataFrame')"
+RUN R -e "remotes::install_github('BIMSBbioinfo/ZarrDataFrame')"
+RUN R -e "install.packages('Seurat')"
+RUN R -e "BiocManager::install('glmGamPoi')"
+RUN R -e "install.packages('arrow')"
+RUN R -e "BiocManager::install('RBioFormats')"
+RUN R -e "BiocManager::install('ComplexHeatmap')"
+RUN R -e "devtools::install_github('xuranw/MuSiC')"
+RUN R -e "BiocManager::install('SingleCellExperiment')"
+RUN R -e "BiocManager::install('SpatialExperiment')"
+RUN R -e "install.packages('dplyr')"
+RUN R -e "BiocManager::install('DESeq2')"
+RUN R -e "install.packages('ggnewscale')"
+RUN R -e "install.packages('patchwork')"
+RUN R -e "install.packages('anndata')"
+RUN R -e "install.packages('R.utils')"
+RUN R -e "devtools::install_github('immunogenomics/presto')"
+
+# Install VoltRon dependencies
+RUN R -e "devtools::install_github('Artur-man/VoltRon')"
+
+# Install basilisk and setup environment
+USER rstudio
+RUN R -e "BiocManager::install('basilisk')"
+RUN R -e "basilisk::obtainEnvironmentPath(VoltRon::getBasilisk())"
+RUN sh -c 'echo "options(voltron.python.path = \"/home/rstudio/.cache/R/basilisk/1.18.0/VoltRon/0.2.0/VoltRon_basilisk_env/bin/python\")" > /home/rstudio/.Rprofile'
+
+# set up java
+USER root
+RUN apt-get update -y
+RUN apt upgrade -y
+RUN apt-get install -y openjdk-21-jdk
+RUN export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-arm64/
+RUN R CMD javareconf -e
+
+# Install java based packages
+RUN R -e "install.packages('rJava')"
+RUN R -e "BiocManager::install('RBioFormats')"
+RUN sh -c 'echo "options(java.parameters = \"-Xmx10g\")" >> /home/rstudio/.Rprofile'
+
+# Install spacexr
+RUN apt-get install -y libgsl-dev
+RUN R -e "options(timeout = 600000000); devtools::install_github(\"dmcable/spacexr\")"
+
+# increase cache disk size for ImageMagick
+RUN sed -i 's/2GiB/10GiB/g' /etc/ImageMagick-6/policy.xml
+
+# vitessceR
+RUN apt-get update -y
+RUN apt upgrade -y
+RUN apt-get install -y libsodium-dev 
+RUN R -e "options(timeout = 600000000); devtools::install_github(\"vitessce/vitessceR\")"