【发布时间】:2017-01-23 12:57:35
【问题描述】:
一段时间以来,我一直在尝试阅读 Docker 卷,但似乎仍然缺少一些东西。
拿这个Dockerfile:(取自文档)
FROM ubuntu
RUN mkdir /myvol
RUN echo "hello world" > /myvol/greeting
VOLUME /myvol
如果我以docker run <img> 简单地构建和运行它,则会创建一个新卷(可以使用docker inspect <containerid> 找到它的名称)。正如预期的那样,/var/lib/docker/volumes/<volumeid> 的内容只是一个包含hello world 的文件greeting。
到目前为止一切顺利。现在,假设我想作为用户将此卷放置到自定义位置。我会运行docker run -v /host/path/:/myvol。这不再起作用了。 /host/path 已创建(如果不存在),但为空。
那么,问题是,我如何在 Dockerfile 中将一些文件放入一个 Volume 中,同时允许用户选择他们放置这个 Volume 的位置?在我看来,这似乎是首先使用 Volume 指令的原因之一。
【问题讨论】:
标签: docker docker-volume