从Docker容器到达主机的文件夹

我在主机的目录/files/username/有一个文件夹。 username是可变的。

这是我的Dockerfile的CMD指令:

 CMD ./entrypoint.sh 

我想在entrypoint.sh获取/files/username/文件夹的内容。 我可以获取用户名variables作为一个环境variables,如下所示:

 $ docker run -e username="User 1" ... 

这样就可以到达entrypoint.sh内的主机设备的文件夹?

有两种方法可以做到这一点。

共享主文件夹

 docker run -v /files:/files -e username="User 1" 

这样,您的入口点脚本将能够在任何用户上工作

只共享用户文件夹

 docker run -v /files/user:/files/user -e username="User 1" 

这只会给该特定用户提供访问权限