Link Conda environment with Jupyter Notebook

I found the solution. The setup for the kernels where located here ~/Library/Jupyter/kernels/.

Then I modified the kernel.json file and set the right path to python.

Now it's working.


Assuming your conda-env is named cenv, it is as simple as :

    $ conda activate cenv
    (cenv)$ conda install ipykernel
    (cenv)$ ipython kernel install --user --name=<any_name_for_kernel>
    (cenv($ conda deactivate

If you restart your jupyter notebook/lab you will be able to see the new kernel available.

PS: If you are using virtualenv etc. the above steps hold good.


Not sure what else did help, but for me crucial was to install nb_conda_kernels in root conda environment. Attempting to install it in specific conda environment did not end up in having Jupyter Notebook be able to use other conda environment other than default one.

conda install -n root nb_conda_kernels

jupyter notebook

For Anaconda I suggest you a much easier and proper solution; just give a look at the nb_conda_kernels package.

It allows you to "manage your conda environment-based kernels inside the Jupyter Notebook".

Is should be included since Anaconda version 4.1.0, otherwise simply use

conda install nb_conda

Now you should be able to manage all direcly from the Notebook interface.

Note that only environments that have a Jupyter kernel installed (in the case of Python, the ipykernel package). Quote from the nb_conda_kernels GitHub page:

Any other environments you wish to access in your notebooks must have an appropriate kernel package installed. For instance, to access a Python environment, it must have the ipykernel package; e.g.

conda install -n python_env ipykernel