查看: 794|回复: 8

[教程] jupyter安装搭建1-jupyternote

[复制链接]
本帖最后由 gray6666 于 2020-10-26 21:14 编辑

  近两个月一直在忙,自己都不知道为啥子这么忙?自从开学上了新教材,各种程序实验、软件测试案例一直在不断的修正中。首先是教材数据与计算必修1(粤教版),项目式教学案例为主线,配套资源无法匹配我们的设备;新教材中中提及最多的是jupyternote的演示。但学校是云机房,很多软件不兼容;电教服务外包,技术人员不懂;WIN10安装了监控软件不能随意设置,云学生端没法安装单机版jupyternote、Anacodan、勉强装了个python3.6;无奈之下,只能自行摸索树莓派4搭建服务器。  摸着石头过河,出工不出活。在这里写一下流程,纪念自己入过的坑。







一、jupyter notebook和jupyter lab区别

都姓jupyter,内容有不同,傻傻分不清,后面来说明。
202010263828..png

1.Jupyter Notebook
是一个款以网页为基础的交互计算环境,可以创建Jupyter的文档,支持多种语言,包括Python, Julia, R等等。广泛用于数据分析,数据可视化和其他的交互和探索性计算中。







2.JupyterLab
是包括了Notebook的下一代用户界面,功能更强。有模块化的界面,可以在同一个窗口同时打开好几个notebook或文件(HTML, TXT, Markdown等等),都以标签的形式展示,于是就更像是一个IDE。




三、步骤概要

202010261945..png

注意
1.如果想手工操作,Supervisor服务器守护程序的相关操作可以省略
2.如果只有单一python3.0环境,python虚拟环境可以不创建
3.具体简化步骤,写在下篇帖子 jupyter安装搭建2-jupyterlab

四、操作流程

1.硬件:
树莓派4板子一块+一张大点的卡
https://www.dfrobot.com.cn/goods-1976.html

2.安装Supervisor
Supervisor是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,将应用程序作为服务器守护程序运行的便捷工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制。

参考代码
sudo apt-get install supervisor -y

202010261699..png

sudo systemctl status supervisor

202010268403..png

2.安装Virtualenv虚拟机,防止pyhton2和python3同时存在环境出乱子浪费时间
(参考安装命令,已安装过的忽略。)

安装虚拟机
sudo pip3 install virtualenv virtualenvwrapper

新建jypyternote文件夹
mkdir ~/jupyternote

分配虚拟空间
virtualenv -p python3 ~/jupyternote

激活虚拟空间
source ~/jupyter-env/bin/activate

202010263088..png

升级pip
python -m pip install --upgrade pip
否则会报错(下面就是我没升级pip,安装出错)
202010265915..png

安装jupyter
pip install jupyter

202010268887..png

jupyter note安装完成,退出虚拟环境。
deactivate

三、创建一个Shell脚本以在虚拟环境中运行Jupyter Notebook。

编辑shelll
nano ~/jupyter-notebook/run-jupyter-notebook.sh


修改代码如下

#!/bin/bash
source /home/pi/jupyter-env/bin/activate
jupyter notebook --ip 0.0.0.0 --port 9999 --no-browser
deactivate


--no-browser: 不自动打开浏览器, 我是通过ssh界面连接服务器, 服务器那边打开浏览器也看不到东西
--port: 设置端口,这个随便设置, 本地浏览器链接服务器时保持一致就行
--ip: 允许接入的ip, 这个参数一定要设置为0.0.0.0, 默认的127.0.0.1是无法在外部连接的



202010265168..png


保存文件,运行代码生效
sudo chmod +x ~/jupyter-notebook/run-jupyter-notebook.sh


四、创建Supervisor配置文件,自动运行Jupyter Notebook


参考代码
sudo nano /etc/supervisor/conf.d/jupyter-notebook.conf


配置内容如下
[program:jupyter-notebook]
directory=/home/pi/jupyter-notebook
command=/bin/bash -E -c ./run-jupyter-notebook.sh
autostart=true
autorestart=true
stopsignal=INT
stopasgroup=true
killasgroup=true
user=pi

202010265760..png

crtl+X保存修改,重新启动Supervisor


参考代码
sudo systemctl restart supervisor.service


五、首次访问Jupyter Notebook时,需要提供Jupyter Notebook生成的令牌。


参考代码
sudo supervisorctl
tail jupyter-notebook stdout


202010265140..png
红笔标出的就是令牌,复制其一即可


六、测试登录


重启树莓派,后台自动运行相关程序。


登录谷歌浏览器,网址栏输入类似格式内容


http:// [您的树莓派ip]:9999 /?token = [token]


首次登录,可以凭借秘钥,修改密码方便使用










安装步骤参考文章:https://www.techcoil.com/blog/ho ... run-python-3-codes/
https://jupyter-notebook.readthe ... /public_server.html














202010261273..png
202010261063..png
202010265461..png

汤果  高级技匠

发表于 2020-10-26 16:23:01

本帖最后由 汤果 于 2020-10-27 06:37 编辑

我很喜欢粤教版中的 Jupyter Notebook 开发环境,很适合课堂教学。不过我给高一年级部署的集成开发环境是树莓派自带的那个 Thonny 编辑器。这个更简洁易用。
回复

使用道具 举报

gray6666  初级技神
 楼主|

发表于 2020-10-26 17:28:05

汤果 发表于 2020-10-26 16:23
我很喜欢粤教版中的 Jupyter Notebook 开发环境,很适合课堂教学。不过我给高一年级部署的继承开发环境是树 ...

我们这里所有电教服务都外包了,不让改硬件,也不给配置;只能自己玩自己的,坑很多,尽量向学考靠拢
回复

使用道具 举报

汤果  高级技匠

发表于 2020-10-26 18:02:58

gray6666 发表于 2020-10-26 17:28
我们这里所有电教服务都外包了,不让改硬件,也不给配置;只能自己玩自己的,坑很多,尽量向学考靠拢{:7_ ...

外包好呀。我们自己搞,简直就是压榨我们。坏了我们自己解决。报给总务处,结果说电脑老师自己都解决不了,怎么怎么地。真的脑壳疼。
回复

使用道具 举报

gray6666  初级技神
 楼主|

发表于 2020-10-26 21:16:03

汤果 发表于 2020-10-26 18:02
外包好呀。我们自己搞,简直就是压榨我们。坏了我们自己解决。报给总务处,结果说电脑老师自己都解决不了 ...

貌似很好,但遇到事情会说合同中没有,还得自己解决问题:{
回复

使用道具 举报

汤果  高级技匠

发表于 2020-10-27 06:37:14

gray6666 发表于 2020-10-26 21:16
貌似很好,但遇到事情会说合同中没有,还得自己解决问题:{

哈哈,原来还有这回事。
回复

使用道具 举报

rzegkly  版主

发表于 2020-10-28 11:24:09

高中信息技术教材对我们是一个考验
回复

使用道具 举报

gray6666  初级技神
 楼主|

发表于 2020-10-28 16:09:46

rzegkly 发表于 2020-10-28 11:24
高中信息技术教材对我们是一个考验

视频精彩,算法难讲
回复

使用道具 举报

gray6666  初级技神
 楼主|

发表于 2020-10-28 16:56:14

sudo apt-get install libatlas-base-dev 增加环境变量,防止出现numpy不能用的问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2021 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail