R interpreter missing in zeppeling docker image - r

I´m working with zeppeling notebook on a Docker container from the oficial apache image: https://hub.docker.com/r/apache/zeppelin
The issue is that I´m not finding the R interpreter there
If I try to import a R library I get an error saying that the interpreter is not available:
I´m not sure if can be installed from the working container, but that won´t be the best solution for this case since it would require to do it each time the container is started

R is included, but it is not available as default interpreter. You need to call it %spark.r or %r:

According to the documentation, R was included. Would you mind to provide the version of the docker image?
You can also build from the source from here: https://github.com/apache/zeppelin. At the very end of the Readme, there's way to build your own image.
Hope this works.

Related

Reticulate package, cannot install Python packages using py_install()

I am following the instructions here to install packages (I'm looking at the "Simple Installation") section: https://rstudio.github.io/reticulate/articles/python_packages.html
Here is my R code:
library(reticulate)
use_python(python="C:\\Users\\...\\AppData\\Local\\Programs\\Python\\Python39\\python.exe")
py_install("pandas")
However, I'm getting the following error:
Error: could not find a Python environment for
C:/Users/.../AppData/Local/Programs/Python/Python39/python.exe
How do I resolve this? I have used py_install() this way on another computer before, so I know it's possible and I would like to use it. However, I can't understand what I'm missing.
You might respond that I need to specify an environment when using py_install(), but the instructions in the link don't require that, and I know it can be done without specifying an environment every time. Do I need to somehow set a "default"?
EDIT: Just to clarify, I am on Windows.
You may not be connected to the proper environment. Depending on your OS, you will likely have to create a .Renviron file and direct R to look for it.
This post here, should help you diagnose the issue:
Unable to change Python path in reticulate

Cannot configure rgee R package properly with ee_install()

I've searched for tutorials to help configure the package in my PC, and I've found this one: https://www.youtube.com/watch?v=_fDhRL_LBdQ
I executed every part of the code interactively with the tutorial, but when I run ee_install() (after installing miniconda with py_discover_config() and other packages previously, such as reticulate), but it keeps me returning an error saying that anaconda is mandatory for the package since I'm a windows user.
Here is the error I get:
Error in ee_install_set_pyenv_env(py_env = py_env, py_path = python_path, : Windows users must install miniconda/anaconda to use rgee. The use of a Python environment is mandatory.
I've just installed Anaconda (full version with navigator) and I set a new python environment called "py2r" and tried to use the function ee_install_set_pyenv(), passing the path to the environment created through Anaconda Navigator (which has a python.exe) as paremeter to py_path and the name "py2r" as paremeter for py_env arg. And yet, it didn't work.
What am I missing?
In case you want to take a look at the code, I can provide it, but I don't think it's necessary because is a simple test script that follows as I described.
Thanks for your attention and congratulations for the library, it will be very usefull for me at work!
I fixed the ee_install() problems bypassing them and doing every passage manually. It will require no more then 10 mins and you will probably fix the installation problems. You can find and follow the manual installation with this tutorial:
https://www.youtube.com/watch?v=1-k6wNL2hlo

Error while loading the Code Generator toolbox in Scilab

I installed Scilab 5.5.2 on Windows 10, and then installed the Scilab Code Generator toolbox.
However, when I start Scilab, the following message appears and I can't use the toolbox. This problem occurs for every toolbox.
Start Scilab Code Generator
Version: 0.9.20190122
Load macros
atomsLoad: An error occurred while loading 'xcos_code_generator-0.9.20190122':
File "C:\Users\光\AppData\Roaming\Scilab\SCILAB~1.2\atoms\x64\XCOS_C~1\09E129~1.201\macros\names" does not exist or read access denied.
(光 is my username.)
I suppose the problem comes from "\Scilab\SCILAB~1.2" in the middle of the file path. In my computer, the only folder in "Scilab" is "scilab-5.5.2", so indeed the software cannot find the file it's looking for.
Does anyone have any ideas?
I need to use the toolbox at work soon, so any help is greatly appreciated. Thank you in advance.
Note: I'm not using the latest Scilab 6.0.2 because it fails to work on my computer. It closes immediately after I open it.
I solved the problem by myself.
It was my user name "光" that caused the problem. I found people saying that user names in full-width characters such as Japanese sometimes cause problems like this.
The solution is to create another user account with a name in half-width characters and install Scilab in that account. (Just changing the full-width user name doesn't work because it doesn't change the filenames that already exist.)
I couldn't find the solution until today because I was searching for solutions only in the context of Scilab, not in the context of software in general.
I hope this answer helps someone.
I'm not sure why you are using an outdated version of Scilab. The latest version is 6.0.2 on Windows. If the newer version doesn't work properly then that's the problem you need to fix first. To test your Scilab installation you may run it in the terminal. Find the installation folder. For me, it is C:\Program Files\scilab-6.0.2\bin the on cmd go to the path and run Scilex.exe. If not uninstall everything and install it in a proper way. My recommendation is to uninstall the old Scilab you already have. Then:
Install Chocolatey package manager
Open PowerShell as Admin and run choco update all -y, once in a while update your packages this way.
run choco install Scilab -y
then open the Scilab software
run the atomsInstall("xcos_code_generator") in the console
runt the atomsLoad("xcos_code_generator") to make sure your package is installed properly. You should see this as a result:
--> atomsInstall("xcos_code_generator")
Scanning repository http://atoms.scilab.org/6.0 ... Done
ans =
!xcos_code_generator 0.9.201901 user SCIHOME\atoms\x64\xcos_code_generator\0.9.201901 I !
--> atomsLoad("xcos_code_generator");
Start Scilab Code Generator
Version: 0.9.20190122
Load macros
Load help
Load demos

Let Docker image build fail when R package installation returns error

I am trying to create a custom Docker image based on Rocker using Dockerfile. In the Dockerfile I am pulling my own R package from a custom GitLab server using:
RUN R -e "devtools::install_git('[custom gitlab server]', quiet = FALSE)"
Everything usually works, but I have noticed that when the GitLab server is down, or the machine running Docker is low on RAM memory, the package does not install correctly and returns an error message in the R console. This behavior is to be expected. However, Docker does not notice the error produced by R and continues evaluating the rest of the Dockerfile. I would like Docker to fail building the image when this occurs. In that way, I could ultimately prevent automatic deployment of the incomplete Docker container by Kubernetes.
So far I have thought of two potential solutions, but I am struggling with the execution:
R level: Wrap tryCatch() around devtools::install_git to catch the error. But then what? Use stop? Will this cause the Docker building process to stop as well? Could withCallingHandlers() be used?
Dockerfile level: Use a shell command to check for errors? I cannot find the contents of R --help as I do not have a Linux machine at the moment. So I am not sure of what R -e actually does (execute I presume) and which other commands could be passed along with R.
It seems that a similar issue is discussed here and here, but the I do not understand how they have solved it.
Thus how to make sure no Docker image ends up running on the Kubernetes cluster without the custom package?
The Docker build process should stop once one of the commands in the Dockerfile returns a non zero status.
install_git doesn't seem to throw an error when the package wasn't installed successfully, so the execution keeps on.
An obvious way to go would be to wrap the installation inside a dedicated R script and throw an error if it didn't finish successfully, which would then stop the build.
So I would suggest something like this ...
Create installation script install_gitlab.R:
### file install_gitlab.R
## change repo- and package name!!
repo <- '[custom gitlab server]'
pkgname <- 'testpackage'
devtools::install_git(repo, quiet = FALSE)
stopifnot(pkgname %in% installed.packages()[,'Package'])
Modify your Dockerfile accordingly (replace the install_git line):
...
Add install_gitlab.R /runscripts/install_gitlab.R
RUN Rscript /runscripts/install_gitlab.R
...
One thing to keep in mind is, this approach assumes the package you're trying to install is NOT installed prior to calling the command.
If you're using a rocker image, they already have the littler package installed, which has the handy installGithub.r script. I believe it should already have the functionality you want. If not, it at least simplifies the running of the custom install_github.r script.
A docker RUN command using littler just looks like:
RUN installGithub.r "yourRepo"

Create a New Plone addon mrbob error

I want to start developing of my first test addon. I have a problem on the basis of mr.bob. Any described ways have leaded to one result. my documentation
log image
Check
mrbob --help
do the same answer.
After I came to the conclusion the problem is in pre-installed Python2.7 with no worked mr.bobe and bobtemplates. I do not know how to make a working set.
Looking at your traceback I guess mr.bob is not fully supporting Windows.
The readline module on Windows is not available. There's some alternatives like pyreadline.
Seems it's a know issue: see https://github.com/domenkozar/mr.bob/issues/49
Don't know about mr.bob, but you could alternatively try adi.devgen (disclaimer: one of my add-ons). Install it with pip:
pip install adi.devgen
And then do:
devgen addOn yournamespace.youraddonname

Resources