最近用学生优惠白嫖到两个月的阿里云学生机,然后想着在上面装个jupyter notebook 试一下,假设你已经到阿里云控制台重制系统为centos 8 这一步了,下面开始后面的步骤:

步骤简述(非常简单):

0. 下载ipython
1. 安装jupyter notebook
2. 生成jupyter notebook配置文件
3. 生成jupyter notebook登陆密码
4. 在防火墙开启配置文件对应端口
5. 远程启动jupyte notebook服务
6. 本地输入域名:端口登陆
7. 第6步不能打开jupyter,则是阿里云那边安全组没打开对应端口,按照我的方式打开即可
8. 重新开始第5,6步
0. 阿里云centos 8 已经预装了python3了,然后安装ipython:
pip3 install ipython
1. 安装jupyter notebook(下面使用的是清华源)(建议):
pip3 install --user -i https://pypi.tuna.tsinghua.edu.cn/simple jupyter notebook

或者直接用官网的:

pip3 install notebook
2. 使用jupyter notebook命令生成配置文件
jupyter notebook --generate-config

这时候如果成功生成了,则继续第三步,也有可能存在找不到该bash命令的提示,这是因为你没有把jupyter notebook加到bash中,可尝试在~/.local/bin这个文件中找一下,看看是否有jupyter, 下图显示为我在这个位置找到了:
或者你可以使用find -name jupyter这个命令查找(下面是我的查找):

[root@xxx]# find -name jupyter
./.local/bin/jupyter  		# bin是存放命令的
./.local/share/jupyter
./.local/etc/jupyter

在这里插入图片描述
这时,你只要把~/.local/bin这个路径加入到~/.bash_profile这个文件即可,具体内容如下

PATH=$PATH:~/.local/bin
export PATH # 这行可能已经有了,那就只要添加上面这行就行(我的就是已经有了)

下图是我~/.bash_profile文件内容的截图:
在这里插入图片描述
然后source 一下这个文件,让他生效:

source ~/.bash_profile

然后在执行:jupyter notebook

jupyter notebook

你输入上述命令后,不出意外的话,就会打印这个命令的帮助信息,然后你就可以执行这一步最开始生成配置文件的命令了(不用翻了,就是下面这条):

jupyter notebook --generate-config

成功执行的话,他就会告诉你这个配置文件的具体路径在哪,一般在~/.jupyter/jupyter_notebook_config.py这,后面这个文件就是配置文件。

3. 生成 jupyter notebook 登录密码文本(如果不配置登录密码,将难以登录和使用)

你可以在输入python3进入交互环境输入下述代码,也可进入ipython环境输入下述代码,下面以在python3交互环境输入为例:

$ python3	# 进入python交互环境
>>> from notebook.auth import passwd
>>> passwd()
Enter password: 
Verify password: 
'sha1:df4a1......' 		#注意,这里生成的密钥不一定是sha1开头,我的就不是
>>> exit()

其中:
(注意:下面输入的密码并不会以 * 显示,直接看不见的,你放心输入就好,但是要记得)
在“Enter password:” 后输入你想设置的登录密码。

在“Verify password:” 后再输入一遍刚才输入的密码。

‘sha1:df4a1…’ 是得到的加密文本

“exit()” 退出 python

4. 编辑jupyter notebook配置文件(终端输入):
vim ~/.jupyter/jupyter_notebook_config.py

找到以下各行,按下述修改:

c.NotebookApp.ip='*' #设置所有ip皆可访问
c.NotebookApp.password = u'sha1:df4a1....' # 复制刚才生成的那个密文',注意前面有个 u
c.NotebookApp.open_browser = False # 禁止自动打开浏览器
c.NotebookApp.port =8888 #随便指定一个端口,8888是默认值,可不做修改
4. 然后打开服务器防火墙,以刚刚配置文件默认的8888端口为例:
systemctl start firewalld		# 这是开启防火墙
sudo firewall-cmd --zone=public --add-port=8888/tcp --permanent
sudo firewall-cmd --reload		# 重启防火墙
5. 启动服务

a.一种是直接启动,这个终端链接必须一直保持:

jupyter-notebook 	#这一行和下面这行是一样的,任意输入一个都行
jupyter notebook

此时jupyter 可能会提示你不要用root用户直接启动,那可以尝试它提示你的下述命令:

jupyter notebook --allow-root

b.另外一种是保持jupyter在后台运行,即使你退出远程链接也没关系:

nohup jupyter notebook --allow-root > jupyter.log 2>&1 &
6. 然后尝试在你本地浏览器输入:
远程ip:8888

幸运的话你就会看到如下登陆页面:
在这里插入图片描述
然后输入你在上述第3步设置的的密码即可。

7. 相信大部分人是不幸运的,我就是,原因很简单,阿里云ECS那边你没有在这台服务器打开8888这个端口,那现在就去打开(如下所示):

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

8. 然后重新开始上述步骤5,启动服务,接下来再进行上述步骤6,这时你应该就能看到jupyter的登陆网页了,输入密码就ok了。

注意:登陆后,右上角一个是Quit按钮,一个是注销按钮,点击Quit的话,远程的服务也会挂掉,重连的话就需要重启服务,注销则不需要重启!

最后贴一些帮助到我的帖子:
a.首先是jupyter 官网:
https://jupyter.org/install
b.对我帮助最大的一个帖子:https://blog.csdn.net/zyehh/article/details/104440591
c.安装了 jupyter 但是找不到命令,帮助贴:https://blog.csdn.net/u011463794/article/details/83017138
d.教我开启防火墙:https://www.cnblogs.com/rxbook/p/8110143.htmlhttps://www.cnblogs.com/wayneliu007/p/10372601.html
e.jupyter后台持续运行命令,帮助贴:
https://blog.csdn.net/weixin_42561002/article/details/85382922?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.channel_param
f.教我在阿里云控制台打开8888端口:https://jingyan.baidu.com/article/60ccbceb29dc7525cbb19719.html

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐