如何在Docker中创建双向绑定卷?

如何在Docker中创建双向绑定卷?,docker,apache,binding,dockerfile,docker-volume,Docker,Apache,Binding,Dockerfile,Docker Volume,我想在容器中有一个双向卷。我将展示一个基本示例: $docker container run-d-p 80:80-v$HOME/htdocs:/var/www/html-httpd 想象一下,如果我在构建过程中扩展该图像并在/var/www/html文件夹中复制一个类似index.html的内容,但是当我绑定一个空文件夹$HOME/htdocs时,/var/www/html的内容会被覆盖 有没有办法避免覆盖绑定卷目标的默认行为?我希望是双向的,/var/www/html的内容应该复制到$HOME

我想在容器中有一个双向卷。我将展示一个基本示例:

$docker container run-d-p 80:80-v$HOME/htdocs:/var/www/html-httpd

想象一下,如果我在构建过程中扩展该图像并在
/var/www/html
文件夹中复制一个类似
index.html
的内容,但是当我绑定一个空文件夹
$HOME/htdocs
时,
/var/www/html
的内容会被覆盖


有没有办法避免覆盖绑定卷目标的默认行为?我希望是双向的,
/var/www/html
的内容应该复制到
$HOME/htdocs

默认值是,如果装载主机卷,容器卷将被覆盖

如果装载新的docker卷,则容器版本的内容将复制到docker卷


如果你想有一个不同的行为,你必须自己构建这个机制,这是很有可能的,但是custom

目前我有一个docker logic之外的定制解决方案,但例如:我希望有一个类似Virtualbox VM共享文件夹逻辑的东西,它们是双向的。哦,如果未装入,则装入是双向的,但不是从一开始就装入。
:ro
表示只读装入,这样容器应用程序将无法修改绑定卷的内容,并将导致该文件夹中出现严重的文件权限问题。主要问题是绑定过程中的初始覆盖。其余的都很好,正如我上面所描述的。安装行为如所述并已固定。