Dockerfile VOLUME 不挂载主机

Dockerfile VOLUME does not mount host

所以我有一个带有 VOLUME 行的 dockerfile,我想在其中将一个目录从我的主机挂载到我的 ubuntu 容器。容器构建良好,但是当它是 运行 时,我想要的目录 挂载为空。

我试图将它直接挂载到 dockerfile 中,所以我不想使用 docker run -v

我该如何正确执行此操作?

docs for the Dockerfile VOLUME instruction中指定:

The host directory is declared at container run-time: The host directory (the mountpoint) is, by its nature, host-dependent. This is to preserve image portability, since a given host directory can’t be guaranteed to be available on all hosts. For this reason, you can’t mount a host directory from within the Dockerfile. The VOLUME instruction does not support specifying a host-dir parameter. You must specify the mountpoint when you create or run the container.

所以不,您无法在 Dockerfile 中指定主机目录。您将需要使用 bind mount--mount--volume 标志,如绑定安装文档中所示。

如果您试图避免在构建上下文中复制额外数据,请考虑使用 .dockerignore 文件。