简介
Jupyter是个支持多语言的开源交互式开发环境,便于分步执行和显示结果,也十分利于展示。在数据分析、机器学习和教学等领域有着广泛的应用。而作为生物信息学的研究者,我们主要通过基于网页的Jupyter Notebook使用Python和R进行工作。
由于其基于网页的特性,可以方便地在本机浏览器中使用子系统和远程服务器上的Python和R环境。
本文主要介绍Jupyter Notebook的安装和R环境的搭建(Jupyter自带对Python的支持),以及子系统和远程服务器上的Jupyter Notebook上的使用方法。
接下来的整个部署过程全部基于非Root权限,以便于没有服务器Root权限的朋友使用。
Jupyter本体安装
使用以下命令安装Jupyter本体(虽然使用pip命令也可以安装,但是为了后续数据分析的包管理方便,强烈建议转换到Anaconda上)
conda install jupyter
conda会自动列出一系列需要一起安装的包,输入“y”后回车即可。
IRkernel的安装与激活
所需依赖包的安装
进入R交互模式,使用以下命令安装相关依赖包。
install.packages(c('repr', 'IRdisplay', 'evaluate', 'crayon', 'pbdZMQ', 'devtools', 'uuid', 'digest'))
有时候部分包会安装失败,直接用命令重新安装一遍即可。
个人测试的时候遇到两个包报错,重新安装后成功。即使再次失败,单独再次安装也可以更清晰地看到报错信息,以方便排错。
IRkernel本体的安装与激活
使用以下命令在R交互模式中安装IRkernel。
devtools::install_github('IRkernel/IRkernel')
安装完成后再用以下命令激活IRkernel
IRkernel::installspec()
有时候会出现类似上图中的警告信息,可以不用在意
使用
Windows系统OpenSSH安装
SSH命令可以用来在终端下远程登陆服务器。Linux、Mac OS自带SSH命令。Windows 10最新版中自带SSH命令,但并未启用。除了Windows 10最新版外,其他版本的Windows系统并没有自带SSH。(注:如果仅仅是想在本地使用Jupyter,可以跳过这个部分)
非Windows 10系统的OpenSSH安装
通过下面的网址进入OpenSSH for Windows的下载地址
https://github.com/PowerShell/Win32-OpenSSH/releases
根据本地电脑操作系统的位数选择对应的包。32位系统下载OpenSSH-Win32.zip,64位系统下载OpenSSH-Win64.zip。
下载完成后将压缩包解压到一个合适的位置。
记下地址,例如上图中的地址就是
D:\Program Files\OpenSSH-Win64
右击“计算机”,选择属性。在弹出窗口中选择“高级系统设置”
在“系统属性”窗口中选择“高级”选项卡,点击“环境变量”按钮。
在“环境变量”窗口中选中“用户变量”中的Path,然后点击“编辑”按钮。
在“编辑环境变量”窗口中点击“新建”按钮
在新的输入框里输入刚才OpenSSH的目录(这里就是“D:\Program Files\OpenSSH-Win64”),然后按确定。之后在“环境变量”窗口、“系统属性”窗口中都记得按下“确定”按钮。在新打开的终端中就可以使用ssh命令了。
Windows 10系统的OpenSSH启用
在最新版的Windows 10系统里已经内置了OpenSSH客户端,但是默认是不启用的。所以需要手动开启。
查看是否有“OpenSSH客户端”,如果有,恭喜你,直接就可以在终端中使用ssh命令了。如果没有则点击“添加功能”。
选中“OpenSSH客户端”选择“安装”
一会儿安装完毕后就可以在新打开的终端中使用ssh命令了。
远程端口映射
Jupyter Notebook支持的是本地使用,但是我们可以通过ssh进行远程端口映射。(注:如果只是希望使用本地系统或者是子系统中的Jupyter,跳过这步)
打开本地电脑的终端,使用以下命令进行远程端口映射:
ssh username@serverip -L 127.0.0.1:1234:127.0.0.1:8888
这个时候终端会提示你输入密码,输入即可。
启动Jupyter Notebook
启动Jupyter Notebook服务
先在远程终端中使用以下命令启动相关服务(注1:如果是本地使用,则在本地终端中输入下面命令,会自动呼出相应页面。注2:如果是使用子系统中的Jupyter,除了要输入下面命令启动Jupyter Notebook服务外,还需要手动打开Jupyter Notebook页面。)
jupyter notebook
之后会有一系列提示,可能会包括“找不到网页浏览器”,不用在意,服务本身可以启动即可。记下“=”后面的那一串字母数字(令牌)。
本地浏览器打开Jupyter Notebook
由于之前已经把远程端口映射到本地了,所以直接在本地的浏览器地址栏中输入以下地址即可。
127.0.0.1:1234
如果是使用本地系统中的Jupyter,在本地终端启动Jupyter后会自动弹出页面。
子系统中的Jupyter在启动后需要手动在浏览器地址栏输入下面的地址启动。
127.0.0.1:8888
如果你是首次连接,会到一个下面这样一个登陆界面,输入刚才记下的令牌就可以登录
这就可以开始使用了。