关于如何从docker容器中解决本地文件夹的问题,有很多小问题,但我找不到与我匹配的文件夹,所以这里有另一个:
如何运行docker容器,并在容器内安装本地文件夹以便R / RStudio可以访问?
听起来有点像:mounting local home directory in Rstudio docker?并使用类似的方法,我可以启动一个容器并装载一个卷:
docker run -d -p 8787:8787 -v $HOME/my_folder:/LOOKATMEEE -e ROOT=TRUE rocker/tidyverse:3.4
如果我在容器中运行bash shell,我可以看到文件夹:
docker exec -it 38b2d6ca427f bash
> ls
bin dev home lib LOOKATMEEE mnt proc run srv tmp var boot etc init lib64 media opt root sbin sys usr
# ^ there is is!
但是如果我在localhost:8787
连接到RStudio服务器,我就不会在文件窗格中看到它,也不会在R控制台中运行list.files()
时显示它:
我确定我遗漏了一些基本的东西,但如果有人能告诉我那是什么......谢谢!
答案 0 :(得分:0)
在这种情况下,R和RStudio的默认工作目录为/home/rstudio
,距离/
两个级别,我告诉docker挂载文件夹。
问题中的docker run
命令后,您可以list.files('/')
查看该文件夹。
如果您希望您的文件夹显示在R的默认工作目录中,请像我一样修改docker run
,如下所示:
docker run -d -p 8787:8787 -v $HOME/my_folder:/home/rstudio/LOOKATMEEE -e ROOT=TRUE rocker/tidyverse:3.4
那里应该是:
感谢用户alistaire
。
答案 1 :(得分:0)
此答案适用于子孙后代:)
概念是主机与容器中资源的“匹配”: :
命令结构应如下所示:
docker run -d -e PASSWORD = -p 8787:8787 -v :/ home / rstudio / rocker / rstudio
查看说明here