欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

远程访问阿里云服务器jupyter

程序员文章站 2022-03-21 18:15:21
官网链接 一、pip安装jupyter安装Anaconda的话,会自动按照jupyter,就不需要再使用pip安装了 pip3 install jupyter 二、生成jupyter notebook配置文件 jupyter notebook --generate-config 记住生成配置文件的目 ......

一、pip安装jupyter
安装anaconda的话,会自动按照jupyter,就不需要再使用pip安装了

pip3 install jupyter

二、生成jupyter notebook配置文件

jupyter notebook --generate-config
记住生成配置文件的目录,一般是在/root/.jupyter 中

三、设置jupyter登陆密码,生成对应密文

ipython #打开ipython
from notebook.auth import passwd
passwd() #复制生成的密文

设置浏览器jupyter登录密码

enter password: #输入密码
verify password: #确认密码

四、修改配置文件

配置文件在当前用户默认根目录的 .jupyter 文件夹下,例如: /home/zql
vi ~/.jupyter/jupyter_notebook_config.py

插入如下代码,粘贴刚刚生成的密文

c.notebookapp.ip='*'
c.notebookapp.password = u'sha1:...刚才复制的那个密文'
c.notebookapp.open_browser = false
c.notebookapp.port =8888 
c.notebookapp.allow_remote_access = true
c.notebookapp.notebook_dir = '/usr/local/mypro/pythonpro' #指定默认打开的文件夹

五、启动jupyter
在服务器终端输入以下命令,会默认使用jupyter_notebook_config.py 配置来开启当前客户端的jupyter notebook服务:

jupyter notebook --allow-root

六、实现远程访问
给阿里云服务器添加安全规则,开放8888端口

远程访问阿里云服务器jupyter

 

 

浏览器输入:服务器ip地址:8888
即可访问服务器端的jupyter


不直接修改默认配置~/.jupyter/jupyter_notebook_config.py

设置配置文件
看了网上其他人的策略通常是直接修改配置文件 ~/.jupyter/jupyter_notebook_config.py
但是个人不推荐这种做法,因为这样需要改动到默认的配置文件。
我推荐的做法是自行创建一个配置文件,然后在运行 jupyter notebook 的时候动态加载配置信息。
创建配置文件,可以取名为root_jupyter_config.py 。
配置内容如下:

c.notebookapp.ip='*' # 指定 可访问 ip 或者 使用 * 则可以用任意 ip
c.notebookapp.open_browser = false # 关闭自动打开浏览器
c.notebookapp.port = 8888 # 端口随意指定,然后在阿里云开对应端口的防火墙即可
c.notebookapp.password = u'sha1:d8334*******' # 复制前一步生成的密钥
c.notebookapp.allow_remote_access = true
c.notebookapp.notebook_dir = '/usr/local/mypro/pythonpro' #指定默认打开的文件夹

启动 jupyter 服务器
根据新建的配置来启动jupyter

jupyter notebook --config=root_jupyter_config.py

把jupyter 服务器作为一个后台的服务,始终启动
但是当前这样还存在一个问题,就是一旦关闭终端,jupyter 程序也就终止了运行。这是因为该 jupyter 程序作为当前终端的子进程,在用户终端关闭的时候将收到一个 hangup 信号,从而被关闭。
所以为了让程序能忽视 hangup 信号,可以使用 nohup 命令。同时还要配合 & 来将程序放入后台运行。

nohup jupyter notebook --config=jupyter_config.py &
我的服务器命令为【可以用其他主机通过ip成功访问】:
nohup jupyter notebook --allow-root --config=root_jupyter_config.py & 

会在当前目录生成一个nohup.out文件
可以看作是程序的输出日志文件
查看该日志文件方法

tail -fn 50 nohup.out

如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件:

nohup command > myout.file 2>&1 &

在linux下杀死nohup提交到后台运行的程序

输入 “ps ux” 来查看所有程序的进程号pid
然后再通过 “kill -9 pid” 杀死程序;
输入 “ps ux” 来查看程序是否被杀死。

此处杀死进程 id 为16256 即可:

ps -au 查看当前用户的进程
ps ux 查看所有进程

root 16256 0.0 2.9 372144 60228 ? sl jan11 5:04 /root/anaconda3/bin/python /root/anaconda3/bin/jupyter-notebook --allow-root --config=root_jup

 

kill -9 16256

  

原文链接:https://blog.csdn.net/sinat_28442665/article/details/85612475