mrb*_*t01 7 mount volume docker
我想将主机上的一个目录挂载到 Docker 容器,并且想在容器内进行一些修改。但是,当我修改挂载点上的内容时,更改也会反映在主机上。
例如:
$ docker run -d --name webserver01 -v /home/guest/app:/app
Run Code Online (Sandbox Code Playgroud)
之后我在 /app 的容器内做了一些更改
$ docker exec -ti webserver01 'touch /app/test.txt'
Run Code Online (Sandbox Code Playgroud)
文件 test.txt 在我的主机和容器内创建(想法是仅在容器内创建文件)
我尝试使用该标志nocopy,但出现此错误:
$ docker run -d --name webserver01 -v /home/guest/app:/app:nocopy
docker: Error response from daemon: Invalid bind mount spec "/home/guest/app:/app:nocopy": invalid mode: nocopy.
Run Code Online (Sandbox Code Playgroud)
Docker版本
$ docker --version
Docker version 1.11.1, build 5604cbe/1.11.1
Run Code Online (Sandbox Code Playgroud)
谢谢您的帮助!
可能有某种方法可以隐藏该文件,但对于 Docker 卷,您所描述的情况是不可能的,因为容器上的目录是主机上目录的挂载,而不是正在复制的文件。
该nocopy修饰符适用于当您创建卷并且数据已存在于容器的路径中时,您可以指定是否希望在创建卷时复制该数据。
您可能需要设计一个卷结构,以便您创建的文件不在共享卷上。
| 归档时间: |
|
| 查看次数: |
23412 次 |
| 最近记录: |