把jupyter notebook开在本地效率越来越低, 因为本地的CPU和内存都被限制, 所以想让LSF集群服务器的某台机器来做server, 然后内网远程连接, 这样不仅能用到服务器的计算资源也能跨平台使用jupyter开发python脚本.
参考了这篇文章
https://blog.csdn.net/cc1949/article/details/79095494
首先需要设置一下jupyter 的密码, 加密一下, 把sha1那一串加密的密码复制出来:
产生jupyter config文件
jupyter notebook --generate-config
打开修改
这里注意c.NotebookApp.ip=’*’ 很重要, 这以为jupyter server对于全局域网都可见, 本来是localhost, 只有改成 *之后远程的电脑才能访问, 所以最好设个密码防止别人乱改.
用bsub提交jupyter notebook的任务
bsub -q QUEUE_NAME -m hostname -J jobname -Is -R 'rusage[mem=100G]' 'export XDG_RUNTIME_DIR=""; jupyter notebook'
这里-m是指定某个host, 不然会被随机分配, 看个人喜好设置.
-Is是指terminal显示运行内容, 也是看个人喜好
-R 后面跟指定的内存大小
export XDG_RUNTIME_DIR="" 加这句话是因为jupyter启动时先要写个cookie, 服务器有可能对某些文件夹没有权限写入因此报错, 所以这里指定默认文件夹或设空避免这个问题.
成功启动jupyter server之后, 就可以打开任意浏览器访问 服务器IP:8888/tree.