【问题标题】:R plumber Api on cloud foundry deployment got stuck云代工部署上的 R 管道工 Api 卡住了
【发布时间】:2018-02-10 09:37:32
【问题描述】:

我在一个文件夹中有 3 个文件 - init.r、myapp.r 和 manifest.yml。

清单文件包含在云代工厂上部署的信息。我正在使用 https://github.com/beibeiyang/cf-buildpack-r.git buildpack 进行部署。

myapp.r 包含一个非常简单的函数,它返回输出作为输入获得的任何内容,并且它使用带有 @ 注释的 get 请求。

#* @get /mypath
abc <- function(input1){
  return(input1)
}

init.r 包含以下代码:

install.packages("plumber")
library(plumber)
r <- plumb("myapp.r")
r$run(port=8056)

当我使用 R studio 在本地运行此代码时很好。但是当我将它部署到云代工厂时,它在说:启动服务器以侦听端口(8056 或任何其他端口)后卡住了。它等待了 15 分钟,但未能启动。之后没有任何进展。有人知道这里发生了什么吗?

【问题讨论】:

    标签: r cloud-foundry


    【解决方案1】:

    您的应用由运行状况检查器监控。其默认设置为port(参见cf push--health-check-type 选项),它反复尝试连接到应用容器的默认端口(8080)以检查您的应用是否已成功启动。最终它会超时,因为您的应用没有响应该端口上的请求。

    使用端口 8080 而不是 8056 或更好的端口号再试一次,通过PORT 环境变量传递给您的应用程序(请参阅http://docs.cloudfoundry.org/devguide/deploy-apps/environment-variable.html#PORT)。

    【讨论】:

      猜你喜欢
      • 2023-03-21
      • 2023-04-04
      • 1970-01-01
      • 2016-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多