如何在云端服务器运行JupyterNotebook
幕后性能:如何在ipythonNotebook中运行R?(单行订购版)从去年开始,我放弃了mathmatica、eviews、matlab等商业统计和数学软件,开始采用开源数据分析。
一方面,这是出于专业需要,想掌握一门更通用的编程语言。
另一方面,像所有中国分析师一样,我使用黑客评论和Matlab,因此没有客户支持。
研究文档和stackoverflow来解决日常问题所花费的工作量并不比使用开源软件少。
开源的好处是,如果确实没有解决方案,至少可以看一下源代码。
虽然如果我不明白的话我可以讨论,但我希望我有选择。
大家都熟悉IPython和R这两个强大的开源数据分析工具。
一般来说,IPython是从Python发展而来,更面向科学计算。
比较喜欢用互联网数据分析。
R是统计学家开发的语言,更广泛地应用于金融、经济和社会科学领域。
我更喜欢R的数据解构和数学相关的语法。
读完介绍性的R教程后,我经常可以猜出我想要使用的一些函数的名称(lag()、diff),而无需查看文档())。
另一方面,我也喜欢IpythonNotebook的交互模式。
从富文本显示效果和用户体验来看,Rmarkdown简直就是一个不成熟的玩具。
此外,Python是一种更成熟的通用编程语言。
数据,它可以与这个世界上几乎所有的协议进行通信。
之前,我使用Rstudio来调试R代码,使用Anaconda的IPythonNotebook或spyder来调试Python代码,并在必要时通过Rpy2等接口将它们组合起来。
但8月底,我收到了Anaconda的邮件:IpythonNotebook已升级至4.0,并更名为Jupyter。
此外,您可以开始使用conda来管理R包。
Anaconda正式支持R!下载并安装Anaconda,然后运行命令:condacreate-nmy-r-env-crr-essentials为R创建虚拟环境,安装Anaconda维护的R发行版r-essentials,然后使用R语法调试运行ipythonNotebook程序中的R!Windows、Linux、OSX都可用!多酷啊!再见,rpy2。
重头戏:如何在云端运行JupyterNotebook?在ipython中成功创建R环境后,我想重试之前的想法,部署云计算服务器。
传统行业尚未进入大数据时代,数据量还比较小。
大多数计算任务都是在我的笔记本电脑上解决的。
但自从我开始使用Python,我也开始编写自己的爬虫,甚至想创建自己的云数据可视化解决方案(否则我怎么能展示我花了这么多时间在非编码领导者身上的研究成果呢?)。
当然,rstudio有一个rstudioserver版本,也可以在云端运行。
但我认为ipython接口是一个更好的前端,支持markdown,并且可以写很多非编码人员可以使用的注释文档。
另一方面,ipython支持Bokeh,一种HTML5数据可视化解决方案。
google了一下,发现目前所有在云端安装ipythonnotebook的方案都是基于ipython2.x。
ipython3.0之后原来的配置方法就不能用了,只好自己研究文档了。
经过几个小时的反复试验,它终于开始在云端运行了。
以下是主要步骤。
原则是你有一个虚拟机和一个可以连接的SSH帐户。
没有的同学可以自行向阿里云等服务商申请。
我个人推荐微软云“1元免费试用”一个月。
通常,这些托管服务提供商会提供基本教程。
所以,从设置主机到创建账户,SSH连接应该不成问题。
接下来,下载科学计算环境管理软件miniconda,Anaconda最低版本(假设你使用的是64位Linux虚拟机):wget"https://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh”然后安装:sudobashMiconda-latest-Linux-x86_64.sh然后,通过环境管理软件miniconda、conda安装应该是ipython和ipython-notebook。
condainstallipythoncondainstallipython-notebook接下来,我们需要创建一个名为nbserver的配置。
ipythonprofilecreatenbserver这将创建一个包含原始配置文件的文件夹。
我们跳进这个文件夹做一些配置cd~/.ipython/profile_nbserver/由于ipythonNotebook需要https连接,所以我们需要创建一个SSL证书。
运行opensslreq-x509-nodes-days365-newkeyrsa:1024-keyoutmycert.pem-outmycert.pem命令后,根据提示输入信息即可。
当然这个证书还没有经过认证,所以当你用浏览器访问它的时候。
像Chrome一样,会有错误信息,这个问题我们稍后再讲。
接下来,我们创建一个加密的密码。
运行python-c"importIPython;printIPython.lib.passwd()"后,您将进入一个创建密码哈希值的小程序。
根据提示输入您要使用的安全密码:Enterpassword:Verifypa。
ssword:sha1:b86e933199ad:a02e9592e59723da722..#这是我密码的哈希值。
最后一部分被删除。
您的密码结果应该不同。
接下来,开始编辑配置文件。
如下:viipython_notebook_config.py文件可能不存在,因此通过vi创建一个。
配置文件内容如下:c=get_config()#所有matplotlib图像都通过iline显示c.IPKernelApp.pylab='inline'#这一行指向我们刚刚创建的SSL证书c.NotebookApp.'/home/azureuser/.ipython/profile_nbserver/mycert.pem'#给出刚刚得到的密码的哈希值createdc.NotebookApp.password=u'sha1:b86e933199ad:a02e9592e5etc...'c.NotebookApp.ip='*'#给出运行端口,ipython默认为8888c.NotebookApp.port=8888#运行ipython时禁止浏览器显示c.NotebookApp.open_browser=False编辑完成后,按两次Shift+z保存退出。
配置完成后,就可以运行ipythonNotebook服务器了:jupyternotebook--config=/home/azureuser/.ipython/profile_nbserver/ipython_notebook_config.py#给出刚刚创建的nbserver路径。
这当然是MicrosoftAzure的默认设置。
云。
,MicrosoftCloud还必须配置服务器端终结点,将云主机的https端口(443)指向内部端口8888。
在浏览器地址栏中输入:https://www.youappdomain.com。
这时会遇到https提示,提示根证书不是认证证书。
忽略此提示并继续输入。
ipythonNotebookserver已配置!输入您刚刚创建的密码并开始像在本地一样使用它。
注:这是我的第一篇技术博客。
当我遇到各种技术问题时,我就上网研究。
stackoverflow、quora、知乎上热心人分享的技术经验都对我帮助很大。
因为我几乎没有遇到过别人解决不了的问题,所以直到这次搭建了JupyterNotebook,我才想到写一个技术分享博客。
这似乎是中文和英文世界第一篇在云端设置JupyterNotebook4.0的教程,也是中文世界第一篇传播r-essential好消息的博文。
告诉我你的想法。
远程桌面可以连云服务器python程序连不上
提问者是否想问“远程桌面可以连接云服务器,但Python程序无法连接怎么办?”1、首先确认云服务器与远程防火墙之间的网络连接是否正常,保证双方能够正常通信。
2.其次,我们确认Python程序是否正在云服务器上运行。
3、最后我们确认云服务器上Python程序使用的端口是否开放。
Pycharm使用云服务器中docker容器的conda环境
当使用Pycharm远程访问云服务器上的Docker容器并在其中运行conda代码时,创建高效的远程工作流程是关键。
本文将详细探讨这个过程,以帮助开发人员成功实现跨平台代码运行时管理。
如有不足之处,请指正。
首先通过pycharm远程访问主机,创建初步的连接框架。
然而,主机的Python解释器无法直接在Docker容器中运行,因此我们需要一个过渡步骤来实现主机到容器的间接访问。
步骤1:远程访问主机。
确保成功连接主机,这是后续操作的前提。
步骤2:在Docker容器中设置SSH连接。
这包括在容器内安装SSH服务、启动SSH、为root用户设置密码、更改配置以允许root登录、重新启动SSH服务以及记录容器的IP地址。
步骤3:在Pycharm中的docker容器中使用conda环境。
选择解释器,添加新的SSH解释器,创建连接,最终成功连接到容器中的conda环境。
通过上述步骤,开发者可以有效地激活远程服务器Docker容器中的conda虚拟环境,为代码开发提供更加灵活、可控的工作环境。
这种方式不仅节省了资源,还提高了代码开发的效率和便利性。
随着不同操作系统和环境之间的兼容性要求的增加,这种方法对于跨平台开发和协作至关重要。