доступ к файлам локально при запуске приложения, содержащегося вinyProxy - PullRequest
0 голосов
/ 21 июня 2019

У меня есть глянцевый прокси-сервер с двумя приложениями. Одно из этих приложений имеет следующий код для доступа к файлам:

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)
})   

Однако это отображение не работает на стороне клиента. Это приложение упаковано в докер, и когда я нажимаю кнопку file.selected, я вижу только файлы внутри докера. Есть ли способ увидеть файлы на стороне клиента?

Например, я пользователь, который вводит адрес сервера xx: xx: xx: xx: 8080 на моем компьютере для доступа к моему приложению. Когда он загружается, есть ли способ просмотреть файлы на моем компьютере (локально)?

Я знаю, что с fileInput я могу использовать возможности просмотра файлов в браузере, но мне также нужен полный путь к файлу, и, насколько я знаю, fileInput хранит только временные datapath

Спасибо

1 Ответ

0 голосов
/ 22 июня 2019

Вы видите файлы только внутри докера, потому что контейнер докера ничего не знает о вашей файловой системе хоста. Вы должны разделить громкость при запуске приложения Docker.

Запуск с общей томой с использованием тега -v.

Допустим, вам нужен доступ к папке рабочего стола вашего хоста. Вы должны сделать папку доступной в контейнере Docker следующим образом:

docker run -d -p ExtPORThere:IntPORThere -v yourDesktopPath:aPATHinContainer YOURimageHere

...