如何使用Shining server在本地计算机上对R Shining应用程序进行Dockerize?

如何使用Shining server在本地计算机上对R Shining应用程序进行Dockerize?,r,amazon-web-services,docker,shiny,R,Amazon Web Services,Docker,Shiny,我试图完成的产品线是: 在本地计算机上构建闪亮的应用程序 使用闪亮服务器对接闪亮应用程序 将这些容器推到AWS 目前,我在Dockerfile的末尾运行Rscript,使用shinny::runApp()运行应用程序。我可以把这个容器推到AWS,我可以很好地访问这个应用程序。但是,闪亮的应用程序会很快变灰(例如,在不活动时,在浏览器中切换选项卡,切换窗口)。我的用户经常从使用应用程序切换到查看他们的电子邮件并返回;应用程序在此期间关闭 我在R和统计编程方面有很强的背景,但在DevOps方面没

我试图完成的产品线是:

  • 在本地计算机上构建闪亮的应用程序
  • 使用闪亮服务器对接闪亮应用程序
  • 将这些容器推到AWS
目前,我在Dockerfile的末尾运行
Rscript
,使用
shinny::runApp()
运行应用程序。我可以把这个容器推到AWS,我可以很好地访问这个应用程序。但是,闪亮的应用程序会很快变灰(例如,在不活动时,在浏览器中切换选项卡,切换窗口)。我的用户经常从使用应用程序切换到查看他们的电子邮件并返回;应用程序在此期间关闭

我在R和统计编程方面有很强的背景,但在DevOps方面没有太多。我见过很多人演示如何使用Docker存储库(如
rocker/shinny
)在Docker容器上安装Shinny server。然而,我还没有能够拼凑出所有这些教程来解决我的整个工作流程。我可以通过运行docker run--rm-p 3838:3838 rocker/Shinny让Shinny server工作,但我不知道如何(a)让本地应用程序在上面工作,以及(b)使用Shinny server构建运行我的应用程序的容器,以便我可以将它们推送到AWS


如何使用Shining server在本地计算机上对R Shining应用程序进行Dockerize,以便将此容器推送到AWS,以便我的应用程序可以在AWS上运行?

您的Dockerfile应该如下所示:

FROM rocker/shiny

RUN install2.r <package1> <package2> ....

COPY <app/directory> /srv/shiny-server/
来自摇滚乐/闪亮
运行install2.r。。。。
复制/srv/s服务器/

在本地生成并运行此映像。如果它工作正常,您可以将其部署到AWS,方法与部署闪亮映像相同

宾果,谢谢。我这样做了,通过
docker build-t testing构建了它。
然后运行
docker run--rm-p3838:3838 testing
,进入我的应用程序,而不是我一直得到的闪亮的服务器索引页面。