第三方平台的 Jupyter Notebook 不好的地方在于,每次给你分配的运行时间以及资源都是有限的;并且如果有些包不是内置而是自己手动下载的,那么每次重新进入到 Jupyter Notebook 中则需要再重新手动下载安装,十分麻烦。
所以如果你有着自己的 VPS 服务器话,也可以在 VPS 上对 Jupyter Notebook 进行部署。这样的话你就可以随时随地访问你服务器上的 Jupyter Notebook 了。
Jupyter notebook+Anconda似乎是个很不错的选择,anconda提供许多常见的数据科学包,如数学建模中常用的numpy,pandas,matplotlab等,并且内置了众多开发工具,如Jupyter notebook,笔者现在就以阿里云ECS服务器为例介绍其部署和使用。
配置
服务商:阿里云
CPU:Intel Xeon E5-2682 v4 2核
内存:DDR4 4GB
带宽:1M
系统盘:40GB
操作系统:Centos 8.0 64位
Anconda 安装
第一步:下载安装文件
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh
根目录出现一个文件Anaconda3-5.3.1-Linux-x86_64.sh

第二步:安装Anconda
执行的二进制文件
bash Anaconda3-5.3.1-Linux-x86_64.sh
一路默认即可,需要注意的是,会有一行需要你选择是否选择将其加入环境变量,默认是no,但一定要选yes!!!

第三步:换源并检查安装
关闭当前终端,重启一个新的终端!!!
然后执行下面两行命令换到清华tuna源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes

执行下面的命令,可以查看相关的conda源信息,检查源是否被正确更改

至此anconda安装完毕
Jupyter Notebook的配置
第一步:安装Jupyter Notebook
使用此命令安装Jupyter Notebook
conda install jupyter notebook
尝试任何conda命令,我得到一个错误:

当conda问你是否可以设置你的.bashrc文件时,你可能点击了NO.这是一个简单的修复:
vim .bashrc
并添加这一行:
export PATH = /root/anaconda3/bin:$PATH
python版本恢复为系统默认的python

第二步:获得密钥
先运行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
插入安装完成时提示的export命令,然后输入如下命令以激活
source ~/.bashrc
最后再次运行服务,就成功启动了!
nohup jupyter notebook &
这里的nohup表示挂起服务,以便ssh客户端关闭后依然可以使用
注意,如果重启服务器后,可能需要重新启动notebook,建议将此命令加入计划任务中
建议不要使用root用户启动,这可能会破坏相关文件,如果需要以root身份执行,请执行
nohup jupyter notebook --allow-root &
如果在使用过程中出现什么报错,可以修复下,执行
bash Anaconda3-5.3.1-Linux-x86_64.sh -u
因为要用到pandas学习数据分析于是装了3.7
但是安装后执行pip3报错
发现只要升级一下pip3的版本就可以了
python3 -m pip install -U pip
-
启动jupyter notebook
nohup jupyter notebook > jupyter.log 2>&1 &
然后远程访问即可,如端口不通,使用如下命令开启相关端口
firewall-cmd --zone=public --add-port=8888/tcp --permanent
若遇到报错:FirewallD is not running,则使用如下命令启动:
systemctl start firewalld.service
然后重新输入上面的那个命令,完成后重启防火墙:
firewall-cmd --reload
最后确认添加是否成功:
firewall-cmd --zone=public --query-port=8888/tcp
问题解决
-
运行时报“No module named 'nbbrowserpdf'”错误
conda install -c anaconda-nb-extensions nbbrowserpdf
网友评论