美文网首页
用 VPS 搭建你自己的在线 Jupyter Notebook

用 VPS 搭建你自己的在线 Jupyter Notebook

作者: 三也视界 | 来源:发表于2020-07-21 23:59 被阅读0次

第三方平台的 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

image.png

第二步:安装Anconda

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


image.png

第三步:换源并检查安装

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

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

至此anconda安装完毕

Jupyter Notebook的配置

第一步:安装Jupyter Notebook

使用此命令安装Jupyter Notebook

conda install jupyter notebook

尝试任何conda命令,我得到一个错误:


image.png

当conda问你是否可以设置你的.bashrc文件时,你可能点击了NO.这是一个简单的修复:

vim .bashrc

并添加这一行:
export PATH = /root/anaconda3/bin:$PATH

python版本恢复为系统默认的python

image.png

第二步:获得密钥

先运行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

相关文章

网友评论

      本文标题:用 VPS 搭建你自己的在线 Jupyter Notebook

      本文链接:https://www.haomeiwen.com/subject/tzakqktx.html