Merge pull request 'Added more compilation steps.' (#1) from andrea.dellamico/docker-jenkins-integration-test:master into master

Reviewed-on: #1
This commit is contained in:
Andrea Dell'Amico 2022-03-29 12:45:01 +02:00
commit 3636399f9e
4 changed files with 60 additions and 1 deletions

11
03_setup_root_path.sh Normal file
View File

@ -0,0 +1,11 @@
#!/usr/bin/with-contenv bash
echo "root path: $WWW_ROOT_PATH"
if [[ ! -z $WWW_ROOT_PATH ]]
then
echo "Set www-root-path to $WWW_ROOT_PATH"
echo "www-root-path=$WWW_ROOT_PATH" >> /etc/rstudio/rserver.conf
else
echo "Not setting www-root-path"
fi

3
04_copy_env.sh Normal file
View File

@ -0,0 +1,3 @@
#!/usr/bin/with-contenv bash
printenv >> /home/$USER/.Renviron

View File

@ -0,0 +1,13 @@
#!/usr/bin/with-contenv bash
echo "session-timeout-minutes=360" >> /etc/rstudio/rsession.conf
echo "session-disconnected-timeout-minutes=360" >> /etc/rstudio/rsession.conf
echo "session-quit-child-processes-on-exit=0" >> /etc/rstudio/rsession.conf
echo "session-default-working-dir=~" >> /etc/rstudio/rsession.conf
echo "session-default-new-project-dir=~" >> /etc/rstudio/rsession.conf
echo "session-save-action-default=yes" >> /etc/rstudio/rsession.conf
echo "allow-shell=0" >> /etc/rstudio/rsession.conf
echo "allow-terminal-websockets=1" >> /etc/rstudio/rsession.conf
echo "limit-cpu-time-minutes=0" >> /etc/rstudio/rsession.conf
echo "limit-file-upload-size-mb=0" >> /etc/rstudio/rsession.conf
echo "limit-xfs-disk-quota=no" >> /etc/rstudio/rsession.conf

View File

@ -11,9 +11,41 @@ ENV DEFAULT_USER=rstudio
ENV PANDOC_VERSION=default
ENV PATH=/usr/lib/rstudio-server/bin:$PATH
# Install OpenJDK
RUN apt-get update && apt-get install -y openjdk-8-jdk-headless openjdk-8-jre-headless
# Install a lot of R packages
ADD https://code-repo.d4science.org/gCubeSystem/r-packages-list/raw/branch/master/install2r-packages.txt /tmp
RUN for f in `cat /tmp/install2r-packages.txt` ; do install2.r --error --skipinstalled --ncpus -1 $f ; done
# Non CRAN repositories
ADD https://code-repo.d4science.org/gCubeSystem/r-packages-list/raw/branch/master/r_non_cran_pkgs.txt /tmp
RUN for l in `cat /tmp/r_non_cran_pkgs.txt` ; do \
pkg=`echo $l | cut -d : -f 1` ; \
mirror=`echo $l | cut -d : -f 2-` ; \
Rscript --slave --no-site-file --no-init-file --no-save --no-restore-history \
-e "install.packages(pkgs='$pkg', repos=c('$mirror/'));" ; done
# From github
ADD https://code-repo.d4science.org/gCubeSystem/r-packages-list/raw/branch/master/r_github_pkgs.txt /tmp
RUN for g in `cat /tmp/r_github_pkgs.txt` ; do \
Rscript --slave --no-site-file --no-init-file --no-save --no-restore-history \
-e " require(devtools); devtools::install_github('$g')" ; done
RUN /rocker_scripts/install_rstudio.sh
RUN /rocker_scripts/install_pandoc.sh
# This part comes from https://github.com/openanalytics/shinyproxy-rstudio-ide-demo/blob/master/Dockerfile
RUN echo "www-frame-origin=disabled" >> /etc/rstudio/disable_auth_rserver.conf
RUN echo "www-verify-user-agent=0" >> /etc/rstudio/disable_auth_rserver.conf
ADD 03_setup_root_path.sh /etc/cont-init.d/03_setup_root_path.sh
# By default RStudio does not give access to all enviornment variables defined in the container (e.g. using ShinyProxy).
# Uncomment the next line, to change this behavior.
ADD 04_copy_env.sh /etc/cont-init.d/04_copy_env.sh
ADD 05_setup_rsession_parameters.sh /etc/cont-init.d/05_setup_rsession_parameters.sh
EXPOSE 8787
CMD ["/init"]
CMD ["/init"]