Docker:如何使用本地文件?

3
场景如下:我有一个Docker镜像,应该在不同的机器上运行。假设镜像内的软件执行以下操作:
  1. 读取一个文件,
  2. 根据该文件计算一些内容,
  3. 写入一个输出文件。
现在,输入文件的内容因用户而异,因此必须易于替换。另外,容器终止后,用户应该可以访问输出文件。
当我将输入文件包含在镜像中时,容器运行得很好,但这不方便,也离实际应用还差得远。我对Docker不熟悉,但已经阅读了“管理容器中的数据”教程,但是我觉得从用户的角度来看,不需要太多的docker-volume-creation-and-management会更加优雅。旨在节省安装时间(除了Docker安装)并尽可能地简化软件部署。

1
卷挂载是这里的最佳选择。如果您想让它们易于使用,那么编写一个包装所有内容的脚本就可以了。 - Oliver Charlesworth
1个回答

4
您可以使用-v将主机目录或文件挂载到容器中。这样,您就能够灵活地决定使用哪个输入文件,因为它位于主机上而无需包含在镜像中。 例如:
docker run -v <host dir>:/container_data_dir image cmd_to_run

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接