在ubuntu18.04服务器配置jupyter notebook并实现远程连接

【服务器】在ubuntu18.04服务器配置jupyter notebook并实现远程连接

    • 一、引言
    • 二、准备工作
    • 三、安装jupyter notebook
    • 四、配置jupyter notebook
    • 五,远程登录
    • 六,结束语
    • 参考文章

一、引言

最近618大促,新入手一台入门级服务器用于自己平时玩耍,系统是ubuntu18.04,但是没有图形界面的服务器一定程度上确实不够友好,于是想到部署一个jupyter notebook 既可以跑跑不能关闭的脚本,又可以通过远程浏览器访问得到一个图形化界面。使用jupyter notebook创建新的terminal,同样可以实现使用命令行操作ubuntu系统。好吧,在没有正常把jupyter跑起来以前,还是乖乖使用服务器原生的界面吧,原生界面长这样:
在ubuntu18.04服务器配置jupyter notebook并实现远程连接_第1张图片

二、准备工作

还是强调一下需要准备的设备和工具:

  1. 一台云服务器,配置不限,不过配置越高,访问和计算的速度肯定更快;
  2. 一台可以联网的笔记本电脑,用来做配置和远程访问;
  3. (可选)一台智能手机,实现手机访问jupyter notebook

三、安装jupyter notebook

1. 安装jupyter notebook
无论是官网下载还是镜像库下载,总之下载一个安装包到本地,出于速度考虑,还是更推荐镜像库下载。安装包有多个版本,取最新的即可,本文的安装包文件类型下载的是linux系统的shell脚本文件。

# 查看当前目录
pwd
# 查看当前目录文件
ls

# 以下两种下载方式选择一种即可
# 下载链接1-官网下载:
wget https://repo.anaconda.com/archive/Anaconda3-2020.02-Linux-x86_64.sh
# 下载链接2-镜像库下载
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2020.02-Linux-x86_64.sh

# 安装anaconda
bash Anaconda3-2020.02-Linux-x86_64.sh

安装过程中会有需要人工确认的选项,一路yes即可。
2. 配置环境变量
anaconda在安装时已经将路径写到了环境变量中,现在需要手动重新编译一下环境变量文件使修改生效:

source ~/.bashrc

判断是否安装完成,可以在命令行输入python,或ipython,或jupyter notebook,前者显示如下截图字段,或后两者可以正常启动,则说明安装完成。
在ubuntu18.04服务器配置jupyter notebook并实现远程连接_第2张图片
如不能正常启动,则有可能是环境变量未添加,需要自己手动添加环境变量:

sudo vim ~/.bashrc

在文件的末尾添加安装的anaconda目录中bin目录的路径:

# 根据自己的实际安装位置填写
export PATH=/root/anaconda3/bin:$PATH

再重新执行一遍编译命令:

source ~/.bashrc

验证是否安装成功的方式与上文相同,这里不再赘述。

四、配置jupyter notebook

1. 生成配置文件

jupyter notebook --generate-config

执行后会输出一个执行文件路径,记住这个路径,我的是/root/.jupyter/jupyter_notebook_config.py
2. 设置密码并生成sha1秘钥
在终端中打开ipython编辑器或python编辑器,我使用的是颜值高的ipython:

ipython

在ipython编辑环境中输入以下代码后,会让输两遍密码,回车后输出sha1秘钥。这个密码即为之后远程访问jupyter notebook时,需要输入的密码,秘钥需要写入配置文件中。因为是服务器环境,无法复制粘贴,我没有找到好的办法,直接拍了个照片对着敲出来的,如果有大神有更好的办法还请赐教。

from notebook.autu import passwd

passwd()

在ubuntu18.04服务器配置jupyter notebook并实现远程连接_第3张图片
3. 生成SSL证书
由于jupyter远程访问使用的是http协议,所以需要生成SSL安全证书

openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mykey.key -out mycert.pem

运行后在当前目录下会生成两个文件:mykey.key和mycert.pem。
4. 配置jupyter notebook的配置文件
找到之前记录的配置文件路径并使用vim编辑器编辑:

sudo vim /root/.jupyter/jupyter_notebook_config.py

在文件的末尾添加如下内容,保存后退出:

c.NotebookApp.ip = '*'
c.NotebookApp.port = 8888
c.NotebookApp.open_browser = False
# 此处填写上面生成的sha1秘钥
c.NotebookApp.password = u'sha1:***'
c.NotebookApp.certfile = u'/root/mycert.pem'
c.NotebookApp.keyfile = u'/root/mykey.key'

在这里插入图片描述

五,远程登录

1. 将jupyter notebook跑起来
直接使用jupyter notebook启动貌似会报错,根据提示添加上–allow-root即可

jupyter notebook --allow-root

2. 使用电脑浏览器远程访问
在服务器的控制台找到服务器的公网IP,在浏览器端输入IP:8888/tree即可成功访问,可以看出它的默认路径就是配置时的用户路径
在ubuntu18.04服务器配置jupyter notebook并实现远程连接_第4张图片
3. 使用智能手机远程访问

不仅电脑端可以访问,手机端也可以随时访问,在手机浏览器中输入IP:8888/tree,也可以访问到服务器的用户路径:
在ubuntu18.04服务器配置jupyter notebook并实现远程连接_第5张图片

六,结束语

现在已经可以使用jupyter notebook远程登录服务器,终于不用对着原生界面发呆了。为了稍微实现一下服务器的价值,我打算回头搞几个脚本上去跑一跑。具体操作且等下回分解咯。。。

参考文章

anaconda安装与jupyter配置
anaconda安装与jupyter配置
vim基本操作

你可能感兴趣的:(工具,云服务器,python)