Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用闪亮的应用程序更新Docker容器内的文件_R_Docker_Shiny - Fatal编程技术网

使用闪亮的应用程序更新Docker容器内的文件

使用闪亮的应用程序更新Docker容器内的文件,r,docker,shiny,R,Docker,Shiny,我正在使用docker部署一个闪亮的应用程序。作为这个应用程序的一部分,它是一个数据文件,可以在闪亮的应用程序中覆盖和更新,就像这样 observeEvent(input$upload_data,{ file.copy(input$upload_data$datapath, "../data.xlsx", overwrite = TRUE) }) 因此,每次上传一个新的数据文件以输入$upload_data时,它都应该用新的上传文件覆盖现有的data.xlsx文件

我正在使用docker部署一个闪亮的应用程序。作为这个应用程序的一部分,它是一个数据文件,可以在闪亮的应用程序中覆盖和更新,就像这样

observeEvent(input$upload_data,{
    file.copy(input$upload_data$datapath, "../data.xlsx", overwrite = TRUE)
})
因此,每次上传一个新的数据文件以输入$upload_data时,它都应该用新的上传文件覆盖现有的data.xlsx文件


当在我的Windows机器上运行应用程序时,这一点非常有效,但是当应用程序在Docker中运行时,数据文件不会被覆盖。启动应用程序时,使用的数据文件是生成Docker映像时最初存在的文件。

Docker不会保留任何数据,除非被告知这样做。对于这种情况,引入了将持久化容器数据的卷。否则,所有数据只存在于RAM中,并将在容器关闭后丢弃

有关更多信息,请阅读以下文章:


您是否定义了容器的体积?这个卷可写吗?dockerfile是否配置为使用默认文件覆盖卷中的文件?如果您可以提供docker文件或docker-compose.ymlI,则会有所帮助:)可写卷是在docker文件中定义的吗?Dockerfile马上就来。