我正在尝试使用docker,使用区域文件的共享卷构建docker的bind9
我想在docker中使用centos构建bind9。在Dockerfile中,我安装了bind,并在安装过程中使用一些文件创建了/ var / named,但是当我使用/ var / named上的共享卷启动容器时,该容器上有区域文件,/ var / named中的原始文件消失了
FROM centos
RUN yum -y install bind -> after that, there are files in /var/named
但是当我使用以下方法启动容器时:
-v /path/to/zonefiles/folder:/var/named
容器无法启动,因为/ var / named中的原始文件已消失
有什么建议如何克服这个问题?也许可以在“docker build”期间使用共享卷?
最佳答案
我对Bind9并不熟悉,但是-v /path/to/zonefiles/folder:/var/named
参数在运行时在容器中的/ var / named处挂载了一个卷,以代替镜像上的任何内容。在运行时将文件放在/ var / named中的唯一方法是,如果这些文件恰巧在运行时位于主机上的/ path / to / zonefiles中。
您可能应该考虑将文件挂载到与/ var / named不同的位置。所以-v /path/to/zonefiles/folder:/var/namedSomethingElse
。
关于docker - 如何在Docker构建期间挂载共享卷?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56613498/