gpt4 book ai didi

docker - 运行shinyProxy中包含的应用程序时在本地访问文件

转载 作者:行者123 更新时间:2023-12-02 19:57:52 24 4
gpt4 key购买 nike

我有一个使用两个应用程序设置的 Shiny 代理服务器。此应用程序之一具有以下代码来访问文件:

volumes = getVolumes()
volumes <- c(Home = fs::path_home(), "R Installation" = R.home(), getVolumes()())

file_selected <- reactive({
shinyFileChoose(input, "file", roots = volumes, session = session)
req(input$file)
if (is.null(input$file))
return(NULL)
#print(parseFilePaths(volumes, input$file)$datapath)
return(parseFilePaths(volumes, input$file)$datapath)
})

但是,此映射在客户端不起作用。这个应用程序在 docker 中进行了容器化,当我单击 file.selected 按钮时,我只能看到 docker 中的文件。有没有办法在客户端查看文件?

例如,我是在我的计算机上键入服务器地址 xx:xx:xx:xx:8080 以访问我的应用程序的用户。加载时,有什么方法可以(本地)查看我计算机上的文件吗?

我知道 fileInput我可以使用浏览器文件列表功能,但我还需要文件的完整路径,据我所知 fileInput只存储一个临时的 datapath
谢谢

最佳答案

您只能看到 docker 内的文件,因为 docker 容器对您的主机文件系统一无所知。您应该在运行 docker app 时共享卷。

使用 -v 以卷共享运行标签。

假设您需要访问主机的桌面文件夹。您应该像这样使 Docker 容器中的文件夹可用:
docker run -d -p ExtPORThere:IntPORThere -v yourDesktopPath:aPATHinContainer YOURimageHere

关于docker - 运行shinyProxy中包含的应用程序时在本地访问文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56705658/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com