当前位置:   article > 正文

云服务器ubuntu20.04 LTS 安装jupyter notebook并进行远程连接配置+代码补全,巨详细。_xshell ubuntu20.04远程访问jupyter

xshell ubuntu20.04远程访问jupyter

前言

笔者是两年测试,不满足功能测试的现状。在不管实际工作需不需要都会在面试时问一句“你会做自动化吗?”、代码基础和自动化经验成了测试工作的入门基础的现状下,学习Python或其它语言已经成了迫在眉睫的事情。于是在一个风雨交加的夜晚躺在床上忏悔这两年的浑浑噩噩和毫无作为时,做了一个重要的决定,学python。
生活不易

工欲善其事,必先利其器。之前一时冲动购买的云服务器不能够浪费。又想要使用jupyter 进行Python学习并记录。先进行部署,后面进行学习记录。
立帖为证,拒绝躺平。
请添加图片描述

1、ubuntu安装jupyter

如果未安装python请先安装哦
安装之后在不同系统命令行运行以下命令

# ubuntu
sudo apt-get install jupyter notebook

# centOS
pip install jupyter

# windows
pip install jupyter
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

2、配置jupyter

2.1、生成jupyter的配置文件

# 生成配置文件
jupyter notebook --generate-config

# 编辑配置文件 
# linux系统
vim ~/.jupyter/jupyter_notebook_config.py

# windows系统配置文件路径 在用户文件夹下的".jupyter"
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

2.2、设置密码

在安装jupyter后,在命令行页面输入"ipython"进入shell页面

# 进入shell页面
ipython

# shell页面导入包
from notebook.auth import passwd

# 调用passwd(),调用后输入想要设置的密码,并再次输入密码
passwd()

# 密码设置完成后,页面会返回转译后的密码,复制备用
密钥形式为:“argon2:$argon2id$v=19$m=10240,t=10,p=8$$3FvjTYfRRdlnajV17RQVaA”,引号内全部复制


# 退出shell页面
exit()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

ps:注意返回转译密码处新版jupyter和旧版返回信息不相同,新版没有“sha1”字符。但两者都是将引号内的全部字符放入配置文件

2.3、配置文件设置,路径~/.jupyter/jupyter_notebook_config.py

# 密码配置,此处输入2.2中步复制的字符串,#号为注释符号,需要去掉,每一个命令前面无空格,才能生效,否则会报错
c.NotebookApp.password= “”

  • 1
  • 2
  • 3

在这里插入图片描述

# 配置默认启动端口,然后云服务器的话注意把端口防火墙开一下
c.NotebookApp.port = 10000

# jupyter notebook默认根目录,引号内输入路径。最好是全英文的路径,并建议给该路径赋权,“chmod 774c.NotebookApp.notebook_dir = “”

# 允许连接的 ip
c.NotebookApp.ip='*'c.NotebookApp.ip='0.0.0.0'

# 启动服务时是否自动打开默认浏览器,Ture 或者 False
c.NotebookApp.open_browser = False

# 是否允许远程连接
c.NotebookApp.allow_remote_access = True
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

2、运行jupyter

安装成功后先使用以下命令尝试是否能够运行

# 普通运行
jupyter notebook

# 无后台窗口运行, >后面的路径是我的日志路径,可自行做匹配修改
nohup jupyter notebook >/usr/local/JupyterNotebook/jupyterLog/jupyter.log 2>&1 &

# 使用root权限运行
jupyter notebook --allow-root

# 指定参数运行
nohup jupyter notebook --ip=0.0.0.0 --port=8080 --no-browser --allow-root >~/usr/local/JupyterNotebook/jupyterLog/jupyter.log 2>&1 &

# 使用无后台运行时,关闭服务可以使用
ps -ef |grep jupyter      查看进程

kill -9 "进程号"          杀死进程

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

运行完成后可通过本地或者远程服务器,通过ip + 端口访问。输入您设置的密码就能够登录了。
在这里插入图片描述

2.1、可能出现错误:ImportError: cannot import name ‘soft_unicode’ from ‘markupsafe’

错误
在ubuntu安装完成后Python3.8.1的环境下运行时,报ImportError: cannot import name ‘soft_unicode’ from 'markupsafe’错误,问题在于‘markupsafe’包中的“soft_unicode”已重命名为“soft_str”.旧名称将在 MarkupSafe 2.1 中删除。想要正常使用jupyter notebook, 将markupsafe包的安装版本指定为2.0.1就能够使用了。

# ubuntu   查看是否已安装 markupsafe
pip3 show markupsafe

# 指定安装版本覆盖安装
python3 -m pip install markupsafe==2.0.1

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

3、扩展知识

3.1、jupyter使用的Python内核配置

# 查看jupyter的内核地址
Jupyter notebook kernel
  • 1
  • 2

在这里插入图片描述

# 进入返回的目录
cd /usr/local/share/jupyter/kernels/python3

# 修改jupyter内核配置文件,内核地址可配置多个,在jupyter页面中切换
vim kernel.json
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述
ps:windows路径可使用"\“代替”"

3.2、jupyter设置代码段自动补全和提示

使用jupyter笔记本敲代码时,没有代码补全,总是打错字或者很长的函数名,非常烦躁。不如直接配置代码补全,一劳永逸
  • 1

1、先安装jupyter拓展包

sudo pip3 install jupyter_contrib_nbextensions
  • 1

2、配置 nbextension,如果已开启jupyter 服务的话,先关闭服务

# 初始化插件
jupyter-contrib-nbextension install --user
  • 1
  • 2

3、启动jupyter后进入页面发现多了一行 Nbextensions 选项, 打开并勾选 Hinterland选项,如果点不了,上面disable选项修改一下:
在这里插入图片描述

嗯,代码补全功能是满足了,但是这么多选项都是干什么的呢。小弟肝不下去了,想了解的小伙伴请移步至https://blog.csdn.net/wjz0626/article/details/125878238

整理不易,观众老爷觉得有收获的话可以点点赞哦~ ,有什么问题也可以留言探讨下
请添加图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/245022
推荐阅读
相关标签
  

闽ICP备14008679号