diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml new file mode 100644 index 0000000..4205201 --- /dev/null +++ b/.github/workflows/docker-image.yml @@ -0,0 +1,170 @@ +FROM rocker/rstudio:4.0.3 + +MAINTAINER Aussel Rudy (aussel@ciml.univ-mrs.fr) + + +# ############################## +# R packages system dependencies +# ############################## + +RUN apt-get update && apt-get install -y optipng \ + pandoc \ + libpng-dev \ + zlib1g-dev \ + libssl-dev \ + libcurl4-openssl-dev \ + libglpk-dev + +# #################################### +# INSTALLING R PACKAGES FOR PROJECT +# #################################### + +RUN apt-get update && apt-get install -y libudunits2-dev imagemagick libhdf5-dev libxml2-dev zlib1g-dev +RUN apt-get update \ + && export DEBIAN_FRONTEND=noninteractive \ +## && apt-get -y install xorg openbox + && apt-get -y install libx11-dev freeglut3 freeglut3-dev libpng-dev + +RUN R -e 'install.packages( "ade4")' +RUN R -e 'install.packages( "BiocManager")' +RUN R -e 'install.packages( "checkmate")' +RUN R -e 'install.packages( "cowplot")' +RUN R -e 'install.packages( "data.table")' +RUN R -e 'install.packages( "devtools")' +RUN R -e 'install.packages( "dplyr")' +RUN R -e 'install.packages( "DT")' +RUN R -e 'install.packages( "ggplot2")' +RUN R -e 'install.packages( "ggrepel")' +RUN R -e 'install.packages( "ggridges")' +RUN R -e 'install.packages( "ggsignif")' +RUN R -e 'install.packages( "gplots")' +RUN R -e 'install.packages( "gridExtra")' +RUN R -e 'install.packages( "igraph")' +RUN R -e 'install.packages( "htmltools")' +RUN R -e 'install.packages( "heatmaply")' +RUN R -e 'install.packages( "knitr")' +RUN R -e 'install.packages( "magrittr")' +RUN R -e 'install.packages( "matrixStats")' +RUN R -e 'install.packages( "pheatmap")' +RUN R -e 'install.packages( "plotly")' +RUN R -e 'install.packages( "Rcpp")' +RUN R -e 'install.packages( "RColorBrewer")' +RUN R -e 'install.packages( "reshape")' +RUN R -e 'install.packages( "Rgraphviz")' +RUN R -e 'install.packages( "rmarkdown")' +RUN R -e 'install.packages( "rprojroot")' +RUN R -e 'install.packages( "Rtsne")' +RUN R -e 'install.packages( "shiny")' +RUN R -e 'install.packages( "shinyBS")' +RUN R -e 'install.packages( "shinydashboard")' +RUN R -e 'install.packages( "stringr")' +RUN R -e 'install.packages( "sp")' +RUN R -e 'install.packages( "tools")' +RUN R -e 'install.packages( "umap")' +RUN R -e 'install.packages( "utils")' +RUN R -e 'install.packages( "viridis")' + + +RUN R -e 'library(devtools);devtools::install_github("JinmiaoChenLab/Rphenograph")' +RUN R -e 'library(devtools);devtools::install_github("JinmiaoChenLab/ClusterX")' +RUN R -e 'library(devtools);devtools::install_github("romanhaa/cerebroApp")' + +RUN R -e 'BiocManager::install("flowCore")' +RUN R -e 'BiocManager::install("openCyto")' +RUN R -e 'BiocManager::install("CytoML")' +RUN R -e 'BiocManager::install("flowViz")' +RUN R -e 'BiocManager::install("flowWorkspace")' +RUN R -e 'BiocManager::install("ggcyto")' +RUN R -e 'BiocManager::install("flowUtils")' + +RUN R -e 'BiocManager::install()' +RUN R -e 'library(BiocManager)' +RUN R -e 'install.packages( "BiocManager")' +RUN R -e 'install.packages("BiocInstaller")' +RUN R -e 'BiocManager::install("multtest")' +RUN R -e 'install.packages("remotes")' +RUN R -e 'remotes::install_version("SDMTools", "1.1-221")' +RUN R -e 'install.packages("Seurat")' +RUN R -e 'install.packages( "sctransform")' +RUN R -e 'library(devtools);devtools::install_github("rstudio/DT")' + +RUN R -e 'install.packages("DDRTree")' +RUN R -e 'install.packages("pheatmap")' + + + +RUN R -e 'install.packages("shinyFiles")' +RUN R -e 'install.packages("shinybusy")' +RUN R -e 'install.packages("shinycssloaders")' +RUN R -e 'install.packages("pheatmap")' +RUN R -e 'install.packages("corrplot")' +RUN R -e 'install.packages("shinywidgets")' +RUN R -e 'install.packages("dplyr", dependencies = TRUE)' + +RUN R -e 'BiocManager::install("biomaRt")' +RUN R -e 'install.packages("shinyWidgets")' + + +RUN R -e 'install.packages("shinyalert")' +RUN R -e 'install.packages("stringr")' + + +RUN apt-get update +RUN apt-get install build-essential chrpath libssl-dev libxft-dev -y +RUN apt-get install libfreetype6 libfreetype6-dev -y +RUN apt-get install libfontconfig1 libfontconfig1-dev -y +RUN cd ~ +RUN wget https://github.com/Medium/phantomjs/releases/download/v2.1.1/phantomjs-2.1.1-linux-x86_64.tar.bz2 +RUN tar xvjf phantomjs-2.1.1-linux-x86_64.tar.bz2 +RUN mv phantomjs-2.1.1-linux-x86_64 /usr/local/share +RUN ln -sf /usr/local/share/phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/local/bin + + + +RUN R -e 'install.packages("webshot")' + + + +RUN apt-get install -y python3-pip +RUN apt-get install -y software-properties-common +RUN apt-get update && apt-get install -y gnupg +RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | apt-key add - +RUN apt-add-repository 'deb https://apt.kitware.com/ubuntu/ bionic main' +RUN apt-get update && apt-get install -y cmake + +RUN pip3 install numpy +RUN pip3 install leidenalg + +COPY Reference/leiden_0.3.10.tar.gz / +#RUN R -e 'devtools::install_github("TomKellyGenetics/leiden")' +RUN R -e 'install.packages( "/leiden_0.3.10.tar.gz", repos = NULL, type = "source")' + + +RUN R -e 'install.packages("kableExtra")' + +RUN R -e 'BiocManager::install("org.Mm.eg.db")' +RUN R -e 'BiocManager::install("clusterProfiler")' +RUN R -e 'BiocManager::install("org.Hs.eg.db")' + +# copy the app to the image +RUN mkdir /root/Shiva +COPY Shiva /root/Shiva + +RUN ls -la /root/Shiva/* + +COPY Reference/Rprofile.site /usr/lib/R/etc/ + +EXPOSE 3838 + + +# #################################### +# CLEAN INSTALL +# #################################### + +RUN apt-get clean\ + && apt-get remove --yes --purge build-essential + +RUN mkdir -p /mnt + + +CMD ["R", "-e", "shiny::runApp(appDir = '/root/Shiva', host='0.0.0.0', port=3838)"]