【随记】服务器安装并配置jupyter notebook,并使用vscode扩展进行连接
-
重新新建虚拟环境(如果使用的是miniconda),安装好需要使用的第三方库
-
进入环境后
conda install jupyter
为当前环境安装jupyter服务 -
使用python3进入命令行交互,输入以下命令配置登陆密钥
from jupyter_server.auth import passwd passwd()
运行结束后会返回一串hash后的密钥数据,复制保留备用
-
运行
jupyter notebook --generate-config
生成jupyter环境配置文件(默认在~/.jupyter/jupyter_notebook_config.py,同目录下json文件是密钥hash) -
修改jupyter环境配置文件中以下配置项:
c.ServerApp.ip='0.0.0.0' c.ServerApp.password=u'sha1****' #就之前保存的验证密码 c.ServerApp.open_browser =False # 设置是否自动打开浏览器 c.ServerApp.port =8888 # 设置端口 c.ServerApp.allow_remote_access = True c.ServerApp.root_dir = 'xxxxxxx' # 配置默认访问的目录
-
启动jupyter服务
- 即用即启,占用一个shell,用后关闭:
jupyter notebook --allow-root
- 一直后台运行,不会自动关闭:
nohup jupyter notebook --allow-root &
关闭方法:lsof -i : {端口号},然后 kill -9 {对应pid} # 9的意思是发送KILL信号,立刻结束,可能会有数据丢失
- 即用即启,占用一个shell,用后关闭:
-
此时应该可以通过本机浏览器远程访问到jupyter的页面了(ip+配置的端口),如果访问不到需要检查服务器防火墙、服务器宝塔、ecs服务商防火墙是否放行该端口。
以下配置VSCode连接
-
在jupyter配置文件中修改以下配置项:
c.ServerApp.allow_remote_access = True #允许远程访问服务 c.ServerApp.allow_root = True #允许在root用户下运行(之前没开这个配置排查了很久) c.ServerApp.allow_origin = '*' #允许任意源访问
-
重启jupyter服务,vscode通过ssh远程连接到服务器上,并安装python和jupyter插件
-
打开一个ipynb文件,点击选择ipykernel,弹窗中选择existing jupyter server,通过URL指定(ip:端口),按提示输入访问密码即可连接
参考:
https://blog.csdn.net/qq_42137895/article/details/104283459
https://blog.csdn.net/weixin_38854519/article/details/134840353