在 Windows 上托管 shiny 应用

Host shiny app on Windows

首先我的问题与

非常相关

How to host Shiny apps on windows server?

但是,看来我需要更多的声望才能在其他帖子中发表评论....

我的 problem/question:我有一个闪亮的应用程序,我想部署它并提供给我部门的人员使用。 shinyapps.io 的付费版本至少目前不是一个选项,所以我正在寻找替代方案。我正在研究 Windows,据我所知这是一个问题,以便托管我自己的服务器。我尝试了 here 提供的解决方案,但出现以下错误:

"Error in makeTcpServer(host, port, appwrapper$onHeaders, appwrapper$onBodyData,  : Expecting a single value: [type=character; extent=5]. 

此外,另一个解决方案是 shinyproxy。但是设置起来相当复杂,而且我在 Windows 10 家庭版上找不到任何地方如何做到这一点(所以没有 Hyper-V 可用性......)。如果您知道这一点,请告诉我!

如果能帮我解决这个问题,我将不胜感激!

谢谢, 扬尼斯

我猜正则表达式找到了 2 个 IPv4 值并将它们存储在 z 值中。

运行 这个并检查它有多少 IP 地址 returns:

x <- system("ipconfig", intern=TRUE)
z <- x[grep("IPv4", x)]
z

如果打印语句看起来像这样,它将无法工作:

print(z)

1 " IPv4-Adresse . . . . . . . . . . : xxx.xxx.x.xxx" IPv4-Adresse . . . . . . . . . . : x.x.x.x"

您将不得不决定其中之一。在此示例中,我使用第二个 Ip-Adress ( z[2] ):我还将“launch.browser = FALSE”更改为 TRUE,以便 shiny-App 在浏览器中打开。

ip <- gsub(".*? ([[:digit:]])", "\1", z[2])
print(paste0("the Shiny Web application runs on: http://", ip, ":1234/"))
runApp(folder_address, launch.browser=TRUE, port = 1234, host = ip)

你的部门有本地 Linux 服务器吗?您可以使用 Shiny Server

的开源版本轻松将其上传到那里