簡體   English   中英

使用 Shiny 應用程序更新 Docker 容器內的文件

[英]Update file inside Docker Container with Shiny Application

我正在使用 docker 部署一個閃亮的應用程序。 作為這個應用程序的一部分,一個數據文件可以從閃亮的應用程序中被覆蓋和更新,就像這樣。

observeEvent(input$upload_data,{
    file.copy(input$upload_data$datapath, "../data.xlsx", overwrite = TRUE)
})

因此,每次將新數據文件上傳到 input$upload_data 時,它都應該用新上傳的文件覆蓋現有的 data.xlsx 文件。

這在我的 Windows 機器上運行應用程序時非常有效,但是當應用程序在 Docker 中運行時,數據文件不會被覆蓋。 當應用程序啟動時,使用的數據文件是生成 Docker 映像時最初存在的數據文件。

除非被告知,否則 Docker 不會保留任何數據。 對於這種情況,引入了 Volumes,它將持久化容器的數據。 否則所有數據只存在於 RAM 中,在容器關閉后將被丟棄。

有關更多信息,您應該閱讀以下文章:

https://docs.docker.com/storage/volumes/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM