1. 服务器:安装jupyter notebook
conda create -n jupyter
source activate jupyter
conda install jupyter notebook
安装注意:需要新建一个环境,不要直接在base环境中安装,详情请点击此处查看
2.服务器:配置jupyter notebook(设置jupyter notebook的port,打开方式,密码等等,相当于软件设置)
a.手动生成配置文件:
jupyter notebook --generate-config
# 生成配置文件于目录: /home/username/.jupyter/jupyter_notebook_config.py
b.生成密码文件并复制:
jupyter notebook password
Enter password: ****
Verify password: ****
#生成密码文件于目录:/home/username/.jupyter/jupyter_notebook_config.json
cat /home/username/.jupyter/jupyter_notebook_config.json # 打开密码文件并复制
c. 修改配置文件
vim /home/username/.jupyter/jupyter_notebook_config.py
c.NotebookApp.ip='*' #允许访问的IP地址,设置为*代表允许任何客户端访问
c.NotebookApp.open_browser = False
c.NotebookApp.port =8889 #可自行指定一个端口, 访问时使用该端口
c.NotebookApp.allow_remote_access = True
c.NotebookApp.password = 'sha1:....刚才生成密码时复制的密文'
3. 服务器:启动jupyter notebook
jupyter notebook
服务器:当然以上配置工作也可以不设置(除了密码设置),但需要在每次打开jupyter notebook时临时指定,即
jupyter notebook --no-browser --port-8889 # 临时指定不打开浏览器和端口,默认不指定ip
4.本地:
理论上,此时可以通过网页 http://address_of_remote(服务器ip地址):8888登陆(外网穿透则更改为穿透的外网域名和端口),但是由于防火墙的设置无法登陆,需要本地建立ssh通道。
打开cmd(需要安装openssh):
ssh username@address_of_remote -p **** -N -f -L localhost:8888:localhost:8889
# username@address_of_remote:服务器用户名和ip,如果是外网穿透,更换为外网穿透后的用户名、域名和端口(需要先使用NAT或者花生壳等实现外网穿透,得到相应的域名和端口), 例如:
ssh novnex@novnex.vip -p 15753 -N -f -L localhost:8888:localhost:8889 # 这里是我使用花生壳映射的外网端口和域名
# -f: 登录成功后即转为后台任务执行
# -N: 不执行远程命令(专门做端口转发)
# -L: 是一个建立在传输层的端口到端口的转发模式
5. 本地:
浏览器输入http://localhost:8888,进入后输入密码即可
# 全过程中localhost可以用127.0.0.1代替,127.0.0.1代表回送地址,
# 系统中的配置文件默认将localhost与127.0.0.1绑定在了一起