0

我是 Docker 的新手,我有一个正在探索 Docker 的应用程序。使用 docker compose 我可以启动多个容器,直到这里一切都按预期工作。我们有各自的 .sh 和 .yml 文件。

我无法理解的场景是有一个容器可以放置我的自定义目录、文件,并且提到在容器启动/重新启动时自定义文件将被复制到该容器的 webroot。我想了解幕后发生的事情。

  • 它会在容器启动/重新启动时创建一个新映像并部署该映像吗?
  • 它只会将这些文件原样移动到新容器中。

非常感谢任何有助于理解上述情况的帮助。提前致谢。

4

1 回答 1

1

取决于您如何构建和运行容器。如果您有一个 Dockerfile 并在其中指定COPYADD /my/files/ /to/container/path这将导致在容器内复制/my/files并创建一个新的图像层(您在其中运行的每个命令Dockerfile 创建一个新层)

这意味着它会在那个时间点对您的文件进行快照并将其复制到 Docker 映像。

但是,如果您只使用 docker-compose 文件并挂载这些文件,则这些文件将在您的主机和容器之间共享。这意味着您可以在本地主机上编辑文件并立即与容器同步,反之亦然。

于 2017-11-07T06:40:42.547 回答