Reputation: 13088
I am trying to install Jupyter-support for Spark in a conda environment (which I set up using http://conda.pydata.org/docs/test-drive.html) of the anaconda distribution. I am trying to use apache toree as Jupyter Kernel for this.
Here is what I did after I installed Anaconda:
conda create --name jupyter python=3
source activate jupyter
conda install jupyter
pip install --pre toree
jupyter toree install
Everything worked fine until I reached the last line. There I get
PermissionError: [Errno 13] Permission denied: '/usr/local/share/jupyter'
Which begs the question: Why is it even looking in that directory? Afterall it is supposed to stay in the environment. Thus I exectue
jupyter --paths
and get
config:
/home/user/.jupyter
~/anaconda2/envs/jupyter/etc/jupyter
/usr/local/etc/jupyter
/etc/jupyter
data:
/home/user/.local/share/jupyter
~/anaconda2/envs/jupyter/share/jupyter
/usr/local/share/jupyter
/usr/share/jupyter
runtime:
/run/user/1000/jupyter
I am not quite sure what is going on and how to proceed to get everything running in (and if possible only in) the conda environment "jupyter".
Upvotes: 6
Views: 8852
Reputation: 19912
You can use --help
to see all available options:
$ jupyter toree install --help A Jupyter kernel for talking to spark Options ------- Arguments that take values are actually convenience aliases to full Configurables, whose aliases are listed on the help line. For more information on full configurables, see '--help-all'. --user Install to the per-user kernel registry --replace Replace any existing kernel spec with this name. --sys-prefix Install to Python's sys.prefix. Useful in conda/virtual environments. --debug set log level to logging.DEBUG (maximize logging output) --kernel_name= (ToreeInstall.kernel_name) Default: 'Apache Toree' Install the kernel spec with this name. This is also used as the base of the display name in jupyter. --spark_home= (ToreeInstall.spark_home) Default: '/usr/local/spark' Specify where the spark files can be found. --toree_opts= (ToreeInstall.toree_opts) Default: '' Specify command line arguments for Apache Toree. --spark_opts= (ToreeInstall.spark_opts) Default: '' Specify command line arguments to proxy for spark config. --interpreters= (ToreeInstall.interpreters) Default: 'Scala' A comma separated list of the interpreters to install. The names of the interpreters are case sensitive. --python_exec= (ToreeInstall.python_exec) Default: 'python' Specify the python executable. Defaults to "python" --log-level= (Application.log_level) Default: 30 Choices: (0, 10, 20, 30, 40, 50, 'DEBUG', 'INFO', 'WARN', 'ERROR', 'CRITICAL') Set the log level by value or name. --config= (JupyterApp.config_file) Default: '' Full path of a config file. To see all available configurables, use `--help-all` Examples -------- jupyter toree install jupyter toree install --spark_home=/spark/home/dir jupyter toree install --spark_opts='--master=local[4]' jupyter toree install --kernel_name=toree_special jupyter toree install --toree_opts='--nosparkcontext' jupyter toree install --interpreters=PySpark,SQL jupyter toree install --python=python
Using jupyter toree install --sys-prefix
is the best option for conda and venv environments.
Upvotes: 2
Reputation: 444
Jupyter tries to install kernel into systemwide kernel registry by default. You can pass a --user flag and it will use a user kernel dir. More details are available in kernelspec.py. Following command installs toree kernel into the user kernel
jupyter toree install --user
Upvotes: 8