-
Notifications
You must be signed in to change notification settings - Fork 35
Open
Description
Hi,
I am unable to build the Docker image using the latest version of the Dockerfile you have in this remote
The issue seems to be related to this Dockerfile actually getting R=3.16 and not R=4.1 as speicified in the README
Dockerfile
ROM us.gcr.io/broad-dsp-gcr-public/terra-jupyter-base:1.1.3
USER root
COPY scripts $JUPYTER_HOME/scripts
# Add env vars to identify binary package installation
ENV TERRA_R_PLATFORM="terra-jupyter-r-2.2.4"
ENV TERRA_R_PLATFORM_BINARY_VERSION=4.3
# Install protobuf 3.20.3. Note this version comes from base deep learning image. Use `conda list` to see what's installed
RUN cd /tmp \
&& wget https://github.com/protocolbuffers/protobuf/releases/download/v3.20.3/protobuf-all-3.20.3.tar.gz \
&& tar -xvzf protobuf-all-3.20.3.tar.gz \
&& cd protobuf-3.20.3/ \
&& ./configure \
&& make \
&& make check \
&& sudo make install \
&& sudo ldconfig \
&& rm -rf /tmp/protobuf-* \
&& cd ~
# Add R kernel
RUN find $JUPYTER_HOME/scripts -name '*.sh' -type f | xargs chmod +x \
&& $JUPYTER_HOME/scripts/kernel/kernelspec.sh $JUPYTER_HOME/scripts/kernel /opt/conda/share/jupyter/kernels
# https://cran.r-project.org/bin/linux/ubuntu/README.html
RUN apt-get update \
&& apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 \
&& add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran40/' \
&& apt-get install -yq --no-install-recommends apt-transport-https \
&& apt update \
&& apt install -yq --no-install-recommends \
apt-utils \
libssh2-1-dev \
libssl-dev \
libcurl4-gnutls-dev \
libgit2-dev \
libxml2-dev \
libgfortran-7-dev \
r-base-dev \
r-base-core \
# This section installs libraries
libnetcdf-dev \
libhdf5-serial-dev \
libfftw3-dev \
libopenbabel-dev \
libopenmpi-dev \
libexempi3 \
libgdal-dev \
libcairo2-dev \
libtiff5-dev \
libgsl0-dev \
libgtk2.0-dev \
libgl1-mesa-dev \
libglu1-mesa-dev \
libgmp3-dev \
libhdf5-dev \
libncurses-dev \
libxpm-dev \
libv8-3.14-dev \
libgtkmm-2.4-dev \
libmpfr-dev \
libudunits2-dev \
libmodule-build-perl \
libapparmor-dev \
libgeos-dev \
librdf0-dev \
libmagick++-dev \
libsasl2-dev \
libpoppler-cpp-dev \
libpq-dev \
libperl-dev \
libgfortran5 \
libarchive-extract-perl \
libfile-copy-recursive-perl \
libcgi-pm-perl \
libdbi-perl \
libdbd-mysql-perl \
libxml-simple-perl \
sqlite \
mpi-default-bin \
openmpi-common \
tcl8.5-dev \
imagemagick \
tabix \
ggobi \
graphviz \
jags \
xfonts-100dpi \
xfonts-75dpi \
biber \
libzmq3-dev \
libsbml5-dev \
biber \
ocl-icd-opencl-dev \
libeigen3-dev \
mono-runtime \
cmake \
libarchive-dev \
&& ln -s /usr/lib/gcc/x86_64-linux-gnu/7/libgfortran.so /usr/lib/x86_64-linux-gnu/libgfortran.so \
&& ln -s /usr/lib/gcc/x86_64-linux-gnu/7/libstdc++.so /usr/lib/x86_64-linux-gnu/libstdc++.so \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# DEVEL: Add sys env variables to DEVEL image
# Variables in Renviron.site are made available inside of R.
# Add libsbml CFLAGS
ENV LIBSBML_CFLAGS="-I/usr/include"
ENV LIBSBML_LIBS="-lsbml"
RUN echo 'export LIBSBML_CFLAGS="-I/usr/include"' >> /etc/profile \
&& echo 'export LIBSBML_LIBS="-lsbml"' >> /etc/profile
## set pip3 to run as root, not as jupyter user
ENV PIP_USER=false
## Install python packages needed for a few Bioc packages
RUN pip3 -V \
&& pip3 install --upgrade pip \
&& pip3 install cwltool \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
RUN R -e 'install.packages("BiocManager")' \
## check version
&& R -e 'BiocManager::install(version="3.18", ask=FALSE)' \
&& R -e 'BiocManager::install(c( \
"boot", \
"class", \
"cluster", \
"codetools", \
"foreign", \
"kernsmooth", \
"lattice", \
"mass", \
"Matrix", \
"mgcv", \
"nlme", \
"nnet", \
"rpart", \
"spatial", \
"survival", \
# Jupyter notebook essentials
"IRdisplay", \
"IRkernel", \
# User oriented packages
"reticulate", \
"remotes", \
"devtools", \
"pbdZMQ", \
"uuid", \
"lme4", \
"lmerTest", \
"data.table", \
"tidyr", \
"dplyr", \
"ggplot2"))' \
&& R -e 'BiocManager::install("DataBiosphere/Ronaldo")'
## pip runs as jupyter user
ENV PIP_USER=true
RUN R -e 'IRkernel::installspec(user=FALSE)' \
&& chown -R $USER:users /usr/local/lib/R/site-library /home/jupyter
USER $USER
Command to run
docker build -t test .
Output
[+] Building 1131.8s (6/13)
[+] Building 1132.0s (6/13)
[+] Building 1132.1s (6/13)
=> => transferring dockerfile: 4.29kB 0.0s
=> [internal] load .dockerignore 0.0s
[+] Building 1132.3s (6/13)
=> [internal] load metadata for us.gcr.io/broad-dsp-gcr-public/terra-jupyter-base:1.1.3 0.4s
=> [internal] load build context 0.0s
[+] Building 1520.2s (12/13)
=> [internal] load build definition from Dockerfile_w_Rinstalls 0.0s
=> => transferring dockerfile: 4.29kB 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [internal] load metadata for us.gcr.io/broad-dsp-gcr-public/terra-jupyter-base:1.1.3 0.4s
=> [internal] load build context 0.0s
=> => transferring context: 854B 0.0s
=> CACHED [1/9] FROM us.gcr.io/broad-dsp-gcr-public/terra-jupyter-base:1.1.3@sha256:d1758af3b27f9ec97e37855538acd0ac074120a1b4a3cbed0 0.0s
=> [2/9] COPY scripts /etc/jupyter/scripts 0.0s
=> [3/9] RUN cd /tmp && wget https://github.com/protocolbuffers/protobuf/releases/download/v3.20.3/protobuf-all-3.20.3.tar.gz & 1179.4s
=> [4/9] RUN find /etc/jupyter/scripts -name '*.sh' -type f | xargs chmod +x && /etc/jupyter/scripts/kernel/kernelspec.sh /etc/jupyt 0.4s
=> [5/9] RUN apt-get update && apt-get install -yq --no-install-recommends apt-transport-https && apt update && apt ins 318.0s
=> [6/9] RUN echo 'export LIBSBML_CFLAGS="-I/usr/include"' >> /etc/profile && echo 'export LIBSBML_LIBS="-lsbml"' >> /etc/profile 0.4s
=> [7/9] RUN pip3 -V && pip3 install --upgrade pip && pip3 install cwltool && apt-get clean && rm -rf /var/lib/apt/l 17.1s
=> ERROR [8/9] RUN R -e 'install.packages("BiocManager")' && R -e 'BiocManager::install(version="3.18", ask=FALSE)' && R -e ' 4.1s
------
> [8/9] RUN R -e 'install.packages("BiocManager")' && R -e 'BiocManager::install(version="3.18", ask=FALSE)' && R -e 'BiocManager::install(c( "boot", "class", "cluster", "codetools", "foreign", "kernsmooth", "lattice", "mass", "Matrix", "mgcv", "nlme", "nnet", "rpart", "spatial", "survival", "IRdisplay", "IRkernel", "reticulate", "remotes", "devtools", "pbdZMQ", "uuid", "lme4", "lmerTest", "data.table", "tidyr", "dplyr", "ggplot2"))' && R -e 'BiocManager::install("DataBiosphere/Ronaldo")':
#0 0.388
#0 0.388 R version 3.6.3 (2020-02-29) -- "Holding the Windsock"
#0 0.388 Copyright (C) 2020 The R Foundation for Statistical Computing
#0 0.388 Platform: x86_64-pc-linux-gnu (64-bit)
#0 0.388
#0 0.389 R is free software and comes with ABSOLUTELY NO WARRANTY.
#0 0.389 You are welcome to redistribute it under certain conditions.
#0 0.389 Type 'license()' or 'licence()' for distribution details.
#0 0.389
#0 0.389 Natural language support but running in an English locale
#0 0.389
#0 0.389 R is a collaborative project with many contributors.
#0 0.389 Type 'contributors()' for more information and
#0 0.389 'citation()' on how to cite R or R packages in publications.
#0 0.389
#0 0.389 Type 'demo()' for some demos, 'help()' for on-line help, or
#0 0.389 'help.start()' for an HTML browser interface to help.
#0 0.389 Type 'q()' to quit R.
#0 0.389
#0 0.465 > install.packages("BiocManager")
#0 0.468 Installing package into ‘/usr/local/lib/R/site-library’
#0 0.468 (as ‘lib’ is unspecified)
#0 1.672 trying URL 'https://cloud.r-project.org/src/contrib/BiocManager_1.30.22.tar.gz'
#0 1.967 Content type 'application/x-gzip' length 582690 bytes (569 KB)
#0 1.967 ==================================================
#0 2.189 downloaded 569 KB
#0 2.189
#0 2.351 * installing *source* package ‘BiocManager’ ...
#0 2.354 ** package ‘BiocManager’ successfully unpacked and MD5 sums checked
#0 2.354 ** using staged installation
#0 2.364 ** R
#0 2.369 ** inst
#0 2.370 ** byte-compile and prepare package for lazy loading
#0 2.755 ** help
#0 2.776 *** installing help indices
#0 2.790 ** building package indices
#0 2.800 ** installing vignettes
#0 2.802 ** testing if installed package can be loaded from temporary location
#0 3.231 ** testing if installed package can be loaded from final location
#0 3.676 ** testing if installed package keeps a record of temporary installation path
#0 3.677 * DONE (BiocManager)
#0 3.683
#0 3.683 The downloaded source packages are in
#0 3.683 ‘/tmp/RtmpkJT8fH/downloaded_packages’
#0 3.683 >
#0 3.683 >
#0 3.731
#0 3.731 R version 3.6.3 (2020-02-29) -- "Holding the Windsock"
#0 3.731 Copyright (C) 2020 The R Foundation for Statistical Computing
#0 3.731 Platform: x86_64-pc-linux-gnu (64-bit)
#0 3.731
#0 3.731 R is free software and comes with ABSOLUTELY NO WARRANTY.
#0 3.731 You are welcome to redistribute it under certain conditions.
#0 3.731 Type 'license()' or 'licence()' for distribution details.
#0 3.731
#0 3.731 Natural language support but running in an English locale
#0 3.731
#0 3.731 R is a collaborative project with many contributors.
#0 3.731 Type 'contributors()' for more information and
#0 3.731 'citation()' on how to cite R or R packages in publications.
#0 3.731
#0 3.731 Type 'demo()' for some demos, 'help()' for on-line help, or
#0 3.731 'help.start()' for an HTML browser interface to help.
#0 3.731 Type 'q()' to quit R.
#0 3.731
#0 3.791 > BiocManager::install(version="3.18", ask=FALSE)
#0 4.107 Error: Bioconductor version '3.18' requires R version '4.3'; use `version = '3.10'`
#0 4.107 with R version 3.6; see https://bioconductor.org/install
#0 4.107 Execution halted
------
Dockerfile_w_Rinstalls:125
--------------------
124 |
125 | >>> RUN R -e 'install.packages("BiocManager")' \
126 | >>> ## check version
127 | >>> && R -e 'BiocManager::install(version="3.18", ask=FALSE)' \
128 | >>> && R -e 'BiocManager::install(c( \
129 | >>> "boot", \
130 | >>> "class", \
131 | >>> "cluster", \
132 | >>> "codetools", \
133 | >>> "foreign", \
134 | >>> "kernsmooth", \
135 | >>> "lattice", \
136 | >>> "mass", \
137 | >>> "Matrix", \
138 | >>> "mgcv", \
139 | >>> "nlme", \
140 | >>> "nnet", \
141 | >>> "rpart", \
142 | >>> "spatial", \
143 | >>> "survival", \
144 | >>> # Jupyter notebook essentials
145 | >>> "IRdisplay", \
146 | >>> "IRkernel", \
147 | >>> # User oriented packages
148 | >>> "reticulate", \
149 | >>> "remotes", \
150 | >>> "devtools", \
151 | >>> "pbdZMQ", \
152 | >>> "uuid", \
153 | >>> "lme4", \
154 | >>> "lmerTest", \
155 | >>> "data.table", \
156 | >>> "tidyr", \
157 | >>> "dplyr", \
158 | >>> "ggplot2"))' \
159 | >>> && R -e 'BiocManager::install("DataBiosphere/Ronaldo")'
160 |
--------------------
ERROR: failed to solve: process "/bin/sh -c R -e 'install.packages(\"BiocManager\")' && R -e 'BiocManager::install(version=\"3.18\", ask=FALSE)' && R -e 'BiocManager::install(c( \"boot\", \"class\", \"cluster\", \"codetools\", \"foreign\", \"kernsmooth\", \"lattice\", \"mass\", \"Matrix\", \"mgcv\", \"nlme\", \"nnet\", \"rpart\", \"spatial\", \"survival\", \"IRdisplay\", \"IRkernel\", \"reticulate\", \"remotes\", \"devtools\", \"pbdZMQ\", \"uuid\", \"lme4\", \"lmerTest\", \"data.table\", \"tidyr\", \"dplyr\", \"ggplot2\"))' && R -e 'BiocManager::install(\"DataBiosphere/Ronaldo\")'" did not complete successfully: exit code: 1
Metadata
Metadata
Assignees
Labels
No labels