您将无法从容器内不解除一些泊坞窗提供了隔离(否则不受信任的应用程序可以安装在主机根文件系统和逃逸)的运行mount命令。 Docker通过从容器内的根用户删除各种功能来防止这种情况发生。
对于NFS挂载,您通常会安装这个作为卷放入容器中的两种方法之一:
安装在主机上的NFS目录,主机目录映射到容器中。这允许您除了在容器内外直接在主机上管理卷。
将NFS目录作为卷直接挂载到容器中。
对于第二种情况,可以定义体积的东西,如:
$ docker volume create --driver local \
--opt type=nfs \
--opt o=addr=10.1.23.123,rw \
--opt device=:/nvol1 \
nvol1
$ docker run -v nvol1:/tmp your_image
编辑:跳过docker volume create
步骤中,您可以用--mount
选项从运行命令这样做:
$ docker run -it --rm \
--mount type=volume,dst=/container/path,volume-driver=local,volume-opt=type=nfs,volume-opt=o=addr=192.168.1.1,volume-opt=device=:/host/path \
foo
在Docker文件中添加给定格式后,它会在构建bash-4.2#docker build时引发错误。 发送建立上下文多克尔守护39.42 KB 步骤1:泊坞 未知指令:泊坞 的bash-4.2#更Dockerfile 搬运工卷创建--driver本地\ --opt类型= NFS \ --opt O = 。ADDR = 10#### ###:。/ xbbl7nvol1,RW \ --opt设备=:/ TMP \ nvol1 – Satte
那些是外壳命令,而不是用于Dockerfile条目。在构建时你将无法做到这一点。请更新您的问题,确切地说您正在尝试做什么,您正在运行的命令以及您正在使用的文件。 – BMitch
我已更新问题。 – Satte