【问题标题】:Rstudio server not running on Google Cloud Compute EngineRstudio 服务器未在 Google Cloud Compute Engine 上运行
【发布时间】:2017-12-08 10:31:27
【问题描述】:

为什么“rstudio-server start”不起作用??

此时,即使在 stackoverflow 上,我也找不到任何有用的答案。 我从以下博客文章中反复检查了以下步骤 1-5 是否足以在 Ubuntu 上安装 Rstudio Server: https://www.r-bloggers.com/installing-rstudio-server-on-ubuntu-server/ http://www.joeroe.eu/blog/2015/08/rstudio-server-on-a-google-compute-engine-instance/ https://gist.github.com/rweald/4321052

这就是我所做的:

1.创建 Google Cloud 虚拟机

Google Cloud Compute Engine > 创建 VM 实例(在 Ubuntu 16.04 LTS 上)

2。安装 R

sudo nano /etc/sources.list

输入:

deb http://cran.rstudio.com/bin/linux/ubuntu xenial/

获取 ubuntu 的公钥:

sudo apt-key adv —keyserver keys.gnupg.net —recv-key 381BA480
sudo apt-get update
sudo apt-get install r-base libapparmor1
sudo apt-get install r-base

3.安装 Rstudio 服务器

sudo apt-get install gdebi-core
wget https://download2.rstudio.org/rstudio-server-1.0.143-amd64.deb
sudo gdebi rstudio-server-1.0.143-amd64.deb

4.在 Google Cloud 防火墙中打开 8787 端口

gcloud compute firewall-rules create allow-rstudio --allow tcp:8787

备注:我确实验证了 8787 端口是开放的: gcloud 计算防火墙规则列表 命名网络 SRC_RANGES 规则 SRC_TAGS TARGET_TAGS allow-rstudio 默认 0.0.0.0/0 tcp:8787 allow-rstudio

5.验证 Rstudio 服务器

无响应:http://:8787 >> 浏览器挂起

无响应:sudo rstudio-server verify-installation >> 命令执行,无消息

无响应:sudo rstudio-server restart >> 没有正在运行的进程重启(“rsession:找不到进程”)

无响应:sudo rstudio-server start >> 命令执行,无消息

感谢您为 RStudio Server 未运行提供任何周到的帮助。

【问题讨论】:

    标签: r linux ubuntu google-compute-engine rstudio-server


    【解决方案1】:
    推荐的答案 Google Cloud

    创建了一条防火墙规则,但您没有将其应用到任何虚拟机,因此该虚拟机上的端口仍未打开,因此,您不能到达您的服务器。

    创建防火墙规则时,为其添加标签per the docs

    gcloud compute firewall-rules create allow-rstudio-server \
        --allow tcp:8787 \
        --target-tags rstudio-server
    

    然后,add the rstudio-server tag 到虚拟机:

    gcloud compute instances add-tags [INSTANCE_NAME] --tags rstudio-server
    

    然后再次尝试访问服务器上的 UI。


    也就是说,您确实应该考虑使用encrypted SSH tunnel 来安全地连接到您的 GCE 虚拟机,以避免在数据从您的计算机传输到您的 GCE 虚拟机并返回时窃听您的数据,或者冒MITM attack 的风险它可以拦截您的密码并接管您的服务器,因为您使用纯文本 HTTP 来访问您的服务器。

    【讨论】:

    • 亲爱的米莎,你成就了我的一天。这是使它立即工作的确切解决方案。非常感谢。我现在将尝试遵循您对加密 ssh 隧道的建议。
    • @SoKalbi — 请注意,如果您确实使用 SSH 隧道方法,那么 不要 也在防火墙中打开端口(即移除标签并删除防火墙规则)。这些是互斥的解决方案:简单方式(通过端口/防火墙)和安全方式(通过 SSH 隧道)。
    • 感谢@Misha 按照您的建议,我删除了标签,但随后无法访问 rstudio 服务器,除非通过 localhost。如何在没有 SSL 证书的情况下再次访问它?
    • @SoKalbi — 我在答案中链接到的 SSH 隧道方法不需要 SSL 证书;你能澄清你的意思吗?如果您想通过纯文本未加密的 HTTP 协议直接访问它(不安全),您可以再次将标签添加到 VM 以在防火墙中打开相同的端口。
    • 抱歉@Misha 不清楚。我想我使用“gcloud compute ssh ”的ssh隧道通过本地主机连接到rstudio服务器,对吧?我从来没有用过http...
    猜你喜欢
    • 1970-01-01
    • 2018-05-07
    • 1970-01-01
    • 2020-09-25
    • 2018-03-26
    • 2014-08-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多