使用 Flexdashboard 部署 Shiny 应用程序

Posted

技术标签:

【中文标题】使用 Flexdashboard 部署 Shiny 应用程序【英文标题】:Deploy Shiny app with Flexdashboard 【发布时间】:2016-12-16 16:04:34 【问题描述】:

我知道如何使用 http://www.shinyproxy.io/ 部署闪亮的应用程序。基本上我只需要 server.R 和 ui.R。然后使用 docker 就很简单了。

但是,当使用 flexdashboard 时,我只有 .rmd 文件。我现在如何实施此部署?

【问题讨论】:

【参考方案1】:

这实际上是由 ShinyProxy 开箱即用支持的。您只需在 docker 镜像中添加yourfile.Rmd 文件(即在您的 Dockerfile 中添加相关命令),然后使用

docker-cmd: ["R", "-e rmarkdown::run('/path/to/yourFile.Rmd')"]

apps 块的相关字段中。应用配置详情here

【讨论】:

【参考方案2】:

渲染 Shiny R Markdown 文档需要服务器端支持。这是开源 Shiny Server 产品的一个功能(参见 Shiny Server documentation),ShinyProxy 似乎没有实现。

如果您想添加对 ShinyProxy 的支持,这不会很困难;有一些细节需要解决,但基本上代理只需要使用rmarkdown::run() 而不是shiny::runApp()

【讨论】:

#jonathan 你能帮我解决这个问题吗? ***.com/questions/40852523/…【参考方案3】:

您可以在这里查看如何使用 R Flexdashboard 制作 Docker 映像。然后您必须将 Shinyproxy 的 application.yml 中的容器 cmd 更改为 ["R", "-e", "rmarkdown::run('/...."] 以呈现 Rmd Flexdashboard 文件。请参阅我的博客文章: https://medium.com/analytics-vidhya/deploying-a-shiny-flexdashboard-with-docker-cca338a10d12

【讨论】:

以上是关于使用 Flexdashboard 部署 Shiny 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

Flexdashboard 不适用于 Shiny URL 状态

R + Shiny 哪个锤子?直的 Shiny、flexdashboard 还是 shinydashboard? [关闭]

在 Rmarkdown 中使用 Shiny 创建响应式 selectInput - flexdashboard

selectInput 选择依赖于 R Shiny Flexdashboard 的另一个 selectInput

Shiny flexdashboard 中的 facet_grid 给出错误“构面变量必须至少有一个值”

使用 shiny::req() 引入 valueBox 占位符