如何在Dockerfile中使用VOLUME来保存目录中的单个文件?

时间:2016-04-01 14:43:29

标签: docker dockerfile

我正在尝试Dockerize的应用程序在install dir的根目录中有配置文件。如果我使用VOLUME在主机上安装install dir,我也会在主机上使用该应用程序。我只想将配置文件存储在主机上。

我应该在容器中使用硬链接并使用VOLUME来安装具有硬链接的目录吗?硬链接甚至可以在容器中工作吗?

1 个答案:

答案 0 :(得分:2)

您可以安装单个文件。以下是docker文档https://docs.docker.com/engine/userguide/containers/dockervolumes/

  

将主机文件挂载为数据卷

     

-v标志也可用于挂载单个文件 - 而不仅仅是   目录 - 来自主机。

$ docker run --rm -it -v ~/.bash_history:/root/.bash_history ubuntu /bin/bash
     

这会让你进入一个新容器中的bash shell,你会有   来自主机的bash历史记录以及当您退出容器时   主机将具有在中输入的命令的历史记录   容器

     

注意:许多用于编辑文件的工具(包括vi和sed --in-place)可能会导致inode更改。从Docker v1.1.0开始,这将产生一个错误,例如“sed:无法重命名./sedKdJ9Dy:Device   或资源繁忙“。在您要编辑已安装的情况下   文件,通常最容易安装父目录。