繁体   English   中英

docker 挂载卷,但将文件保留在 docker 容器内

[英]docker mount volumns but keep files inside the docker container

我使用 Dockerfile 来构建 php 的映像,但默认情况下,PHP 没有 ZE13BFD7623E8419 文件。 所以我需要创建它。 现在我有三种方法可以做到这一点:

  1. 在 Dockerfile RUN cp /usr/local/etc/php/php.ini-production /usr/local/etc/php/php.ini中使用 RUN 命令。 但是这种方式仍然使用默认设置,我无法编辑它(或编辑它并提交容器)。

  2. 在 Dockerfile COPY php.ini /usr/local/etc/php/php.ini中使用 COPY 命令。 好的,现在我可以编辑配置然后构建映像,但是如果我需要更改某些设置,我需要重建映像

  3. 使用卷参数,将其添加到 docker-compose.yml - $PWD/php/conf.d:/usr/local/etc/php/conf.d/my_config 通过这种方式,我可以随时编辑 php.ini 并重新加载配置文件。 但是,我想知道的最好方法是- $PWD/php/conf.d:/usr/local/etc/php/conf.d 第一种方法将在 docker 容器中创建一个新的子文件夹,第二种方法将删除文件夹中原来的 *.ini 文件

我想知道这里有某种方式可以挂载卷而不删除容器中的文件(3的第二种方式但不删除文件)

实际上文件并没有从子文件夹中deleted 卷安装在它上面。

参考

您可以做的是,为您的*.ini文件分配一个单独的文件夹,并从主php.ini文件中引用它。 因此,每次重新加载 php 时,它都会转到php.ini并从那里获取您的专用配置文件夹并从那里加载所有*.ini文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM