anaconda jupyter notebook Linux Server 服务器环境的安装及配置

最近刚好有用户需要我们提供jupyter notebook 给其使用。因此就有了这篇在Linux Server(RedHat) 下安装jupyter notebook的内容。本文将集中在一下几个方面:

1. 为什么在 anaconda 虚拟环境中安装 jupyter notebook

2. 在anacaonda 安装jupter noebook的主要步骤

3. 安装过程中遇到的一些问题

4. 其他

一、为什么在anaconda 虚拟环境中安装jupyter notebook

anacoanda 因为具有创建虚拟环境的功能,虚拟环境之间可以相互隔离。使用anaconda 可以节约安装jupyter notebook时间成本,降低解决各种环境问题的复杂度。


二、在anacaonda 安装jupter notebook的主要步骤

1. activate conda env

激活你想要安装jupter notebook的anaconda 环境,假设你的虚拟环境名字为erictech (我用的python 3.6),则输入以下命令

source activate erictech

2. install jupyter package

安装jupter package,这里使用conda install 安装(之前尝试使用pip 安装时遇到了一些问题,用conda安装则比较顺利)

conda install jupyter

安装完毕后,可以看到jupyter 和notebook相关的包都已经安装进去了。

3. 创建jupyter notebook 配置文件

jupyter notebook --generate-config

该命令在你的用户目录下生成一个jupyter notebook的配置文件,文件名称是jupyter_notebook_config.py,通过修改该文件,可以实现服务端启动jupyter notebook,然后在用户机器上使用浏览器访问。

4. 修改配置文件已使其能远程访问

找到配置文件jupyter_notebook_config.py, 并修改以下四个个变量

···

c.NotebookApp.ip = '*' #表示你需要远程访问,不做ip限制

c.NotebookApp.open_browser = False #不打开浏览器

c.NotebookApp.port = 5000 #juypter notebook的服务端口

c.NotebookApp.password = password #你指定的password,需要是加密的,请参考下面方式设置

···

密码按照下面的方式进行设置

# setting up the password

from IPython.lib

import passwd 

password = passwd("your_secret_password")

c.NotebookApp.password = password

5. 启动 jupyter notebook

输入下面命令启动jupyter notebook,

jupyter notebook

这里的jupyter notebook如果是第一次安装,可能会遇到一个下面的错误ImportError: cannot import name constants具体解决方法请见第三节的问题一.

启动完毕后,即可以在用户电脑上,使用浏览器通过服务器IP+你设置的端口,访问了(启动jupyter notebook后,打出的日志里也会有访问链接)。

访问的时候,需要输入你的密码,如果是上面的配置,那你输入的密码为: your_secret_password


三、安装过程中遇到的一些问题及高级配置

问题一: 第一次安装完jupyter notebook ,使用jupyter notebook 报错

ImportError: cannot import name constants

解决方案一(我试了有用的方案)

pip3 install --upgrade pyzmq jupyterlab jupyter --force-reinstall

解决方案二(没有验证)

pip3 uninstall pyzmq

pip3 install pyzmq

答案原问题链接

问题二:遇到Jupyter Notebook Server password invalid 的错误

这个问题发生在使用ipython生成加密密码的过程中,大概是如下文的输入,但是生成的密码不是以sha开头的,最后不可用。

ipython

from notebook.auth import passwd

In [1]: from notebook.auth import passwd  

In[2]: passwd() 

Enter password: 

Verify password:

Out[2]: 就有你的sha开头的一个密码

然后通过把python 生成密码的逻辑写到配置文件中,解决了问题。

# setting up the password

from IPython.lib

import passwd 

password = passwd("your_secret_password")c.NotebookApp.password = password


答案出处

问题三 false配置文件识别问题

配置时,需要注意大小写,false并不是配置文件可以识别的一个关键字,需要使用False, 如下图所示

c.NotebookApp.open_browser = False


问题四 如何将 anaconda 的虚拟环境 添加到jupyter notebook 的kernel 选项中

首先在装了jupyter notebook 的 anaconda 虚拟环境中,安装下面的包

conda install nb_conda_kernels


在你想要显示在jupyter notebook中的 anaconda 虚拟环境中,安装下面的包(安装前,请先激活对应环境)

conda install ipykernel

执行完上面步骤后,重新激活安装jupyter notebook的环境,并启动jupyter notebook, 就可以在kenel 列表中看到你想要的kenel了

问题五 如何制定配置文件

对应不同环境的部署,我们会需要一个固定的路径去存放我们的配置文件,这样才不会因为不同用户导致我们配置文件无法读取到。

可以使用--config 参数来启动jupyter notebook ,如下

jupyter notebook --config=/your_path/jupyter_notebook_config.py


结尾

如果这篇有帮到你,欢迎关注我

你可能感兴趣的:(anaconda jupyter notebook Linux Server 服务器环境的安装及配置)