用过几次Jupyter notebook,感觉对初学者非常友好。在一些数据科学的应用场景中,这样的interactive的python解释器简直不要再好。相比于Ipython,Jupyter 的优点是其更强大而丰富的功能,并且其可以在web端访问,其中Jupyter notebook又更加适合笔者这样的初学者使用。当然,笔者下一步也会使用Jupter Lab,不过先以notebook入门。
Jupyter notebook+Anaconda似乎是个很不错的选择,anaconda提供许多常见的数据科学包,如数学建模中常用的numpy,pandas,matplotlab等,并且内置了众多开发工具,如Jupyter notebook,笔者现在就以阿里云ECS服务器为例介绍其部署和使用。
更新笔者最近在配置实验室的GPU深度学习工作站,使用了Jupyter Lab,还实现了开机启动等功能,详情请见:
深度学习图形工作站环境安装与配置(2)anaconda的安装与配置和jupyterlab的部署,开机自启动
服务商:阿里云
CPU:Intel Xeon E5-2682 v4 2核
内存:DDR4 4GB
带宽:1M
系统盘:40GB
操作系统:Centos 8.0 64位
不知道出于哪些因素,笔者在centos下使用jupyter好像不太稳定,如果你也发现一些错误,建议使用Ubuntu 18.04 64位版本
目前笔者知道的,可以从两个位置获取anaconda安装包,建议选择清华tuna源的安装包,笔者实测官网的包由于在国外,只有几百kb来秒,而清华tuna源几乎可以跑到全速
清华tuna源:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
官方源:https://repo.continuum.io/archive/index.html
打开之后,选择较新的版本获得他的下载链接,不出意外的话,旁边应该附有更新时间,选择较新的
我们这里选择的是应用于linux的最新的64位版本的anaconda
点开之后,应该会有普通的浏览器都会弹出一个下载用的链接,笔者这里是https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh
记住这个链接,下一步有用
使用如下几个命令开始你的安装
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh
这一个命令的功能是下载相应的安装文件,中间的那个链接应该是你在第一步找到的下载链接,默认情况下,他会保存到你现在的工作目录
bash Anaconda3-5.3.1-Linux-x86_64.sh
这个命令打开了这个可执行的二进制文件,开始准备安装,后面这个文件的名称应该是你下载的anconda安装文件的名称
接下来就是交互式的安装过程,一般默认即可,或根据自己的情况选择需要的选项
需要注意的是,会有一行需要你选择是否选择将其加入环境变量,默认是no,但一定要选yes!!!
关闭当前终端,重启一个新的终端!!!
然后执行下面两行命令换到清华tuna源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
执行下面的命令,可以查看相关的conda源信息,检查源是否被正确更改
conda info
正常情况下,划横线的部分应该在URLs的最前面,优先级最高
至此anconda安装完毕
使用此命令安装Jupyter Notebook
conda install jupyter notebook
先运行IPython,在终端运行此命令直接打开ipython
ipython
在接下来的操作中,依次执行这两条代码
from notebook.auth import passwd
passwd()
按操作输入密码,你将会得到一个接口密钥,就是图中被划掉的部分,记住他
执行下面的命令,他将在你的家目录生成相关的配置文件
jupyter notebook --generate-config
一般的情况下,他不希望用root身份生成该配置文件,如果报错的话,可以使用
jupyter notebook --generate-config --allow-root
正确操作下会返回该配置文件的位置,该配置文件在隐藏目录下(开头打.)
用vim打开配置文件,并做出下面的修改,可以在最后添加下面几行
c.NotebookApp.password = 'sha1:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'#这里应该是你的密钥
c.NotebookApp.ip='*'#允许访问的ip,这里可以填写*,代表所有ip均可访问
c.NotebookApp.open_browser = False
c.NotebookApp.port =80 #浏览器端口,80就是普通的http服务接口,打开时就不用指定port
最后再次运行服务,就成功启动了!
nohup jupyter notebook &
这里的nohup表示挂起服务,以便ssh客户端关闭后依然可以使用
注意,如果重启服务器后,可能需要重新启动notebook,建议将此命令加入计划任务中
建议不要使用root用户启动,这可能会破坏相关文件,如果需要以root身份执行,请执行
nohup jupyter notebook --allow-root &
如果在使用过程中出现什么报错,可以修复下,执行
bash Anaconda3-5.3.1-Linux-x86_64.sh -u