coding-for-reproducible-research / CfRR_Courses

Home Repository for the CfRR website
https://coding-for-reproducible-research.github.io/CfRR_Courses/
5 stars 2 forks source link

Performance Issues when using binder instance with R bundled #126

Open berrli opened 3 months ago

berrli commented 3 months ago

When bundling R within the binder instance in #124 resulted in the first attempt ofbuilding the binder to timeout. The docker image was successfully built but when pulling the image it timed out, and automatically retried. On the retry the following output was produced.

2024-07-25T09:23:02.991433Z [Warning] 0/6 nodes are available: 1 node(s) had untolerated taint {node.kubernetes.io/unreachable: }, 1 node(s) were unschedulable, 4 node(s) didn't match Pod's node affinity/selector. preemption: 0/6 nodes are available: 6 Preemption is not helpful for scheduling..

There is a good chance that it is on binders end but it is something that should be kept an eye on and acknowledgment that it occurred after including the R kernel and rpy2. The website is not affected only the binder.

berrli commented 3 months ago

The R integration has been removed due to the bloat of the docker image that will cause blinder to slow down considerably. However it did load correctly and does work when tried later when binder load was lower. Discuss whether running R code within the website is key or not.

To implement the functionality of an R kernel within the binder, include the following three files within the "binder" folder within root, that will need to be created.

binder/install.R

install.packages("reticulate")
install.packages("Rcpp") 

binder/postBuild

#!/bin/bash
pip install rpy2

binder/runtime.txt

r-4.1-2022-01-15

rpy2 should also be added to 'requirements.txt