我有几个Shiny应用程序,我已经开发了几个月。我现在准备将我的应用程序推广到目标受众,但是希望避免在每台计算机上安装R的麻烦,确保它是适用于所有依赖项等的R版本。
我被告知可能有办法在虚拟环境中运行一个Shiny应用程序,我可以给用户,但我不太了解这些。理想情况下,用户只需双击一个图标,Shiny应用就会在他们的网络浏览器中打开。
我无法在服务器上托管Shiny应用,因为它包含保护数据的凭据,否则我会走这条路。
有没有办法让Shiny应用程序在已经安装了R和Shiny的某种准备环境中运行,以及所有应用程序的依赖项?
答案 0 :(得分:1)
希望避免在每台计算机上安装R的麻烦
每台电脑,意味着什么?即使您分发了VM或Docker镜像,最终用户仍然需要安装软件。
另一种方法是将您的应用程序托管在云端,并将人们指向一个URL,我认为Heroku可能会提供R托管。
理想情况下,用户只需双击一个图标,Shiny应用就会在他们的网络浏览器中打开。
同样,如果您要使用“每台计算机”并安装软件,这需要某种类型的捆绑到应用程序中(这取决于外部软件),或者如果您可以在服务器上托管,则只需配置URL用于打开默认Web浏览器的快捷方式图标。您是否正在考虑该可点击图标的所有可能的操作系统?
有没有办法让Shiny应用程序在已经安装了R和Shiny的某种准备环境中运行,以及所有应用程序的依赖项?
您基本上已经要求提供虚拟机或Docker镜像。
如果您想使用VirtualBox路线,我可以建议using Vagrant to create distributable VM images
我无法在服务器上托管Shiny应用程序,因为它包含保护数据的凭据,
只要您不允许root权限或将该数据发布到可公开访问的地方,您就可以在服务器上托管它。或者您可以在家中托管它并找出如何将路由器转发到服务器/应用程序