使用自定义文件了解 docker。
Understanding docker with custom files.
我是 Docker 的新手,我有一个正在探索 Docker 的应用程序。使用 docker compose 我可以建立多个容器,直到这里一切都按预期工作。我们有各自的 .sh 和 .yml 文件。
我无法理解的场景是有一个容器,我可以在其中放置我的自定义目录和文件,并且提到在容器 start/restart 时自定义文件将被复制到 webroot那个容器。我想了解幕后发生的事情。
- 它会在容器 start/restart.
时创建一个新镜像并部署该镜像吗
- 它将按原样将这些文件移动到新容器中。
非常感谢任何有助于理解上述情况的帮助。提前致谢。
取决于您如何构建和 运行 容器。如果您有一个 Docker 文件并在其中指定 COPY 或 ADD /my/files/ /to/container/path 这将导致在容器内复制 /my/files 并创建一个新的图像层(您在 Docker 文件中 运行 的每个命令都会创建一个新层)
这意味着它会在那个时间点对您的文件进行 快照,并将其复制到 Docker 图像。
但是,如果您只使用 docker-compose 文件和 mount 这些文件,这些文件将 共享 在你的主机和容器之间。这意味着您可以在本地主机上编辑文件并立即与容器同步,反之亦然。
我是 Docker 的新手,我有一个正在探索 Docker 的应用程序。使用 docker compose 我可以建立多个容器,直到这里一切都按预期工作。我们有各自的 .sh 和 .yml 文件。
我无法理解的场景是有一个容器,我可以在其中放置我的自定义目录和文件,并且提到在容器 start/restart 时自定义文件将被复制到 webroot那个容器。我想了解幕后发生的事情。
- 它会在容器 start/restart. 时创建一个新镜像并部署该镜像吗
- 它将按原样将这些文件移动到新容器中。
非常感谢任何有助于理解上述情况的帮助。提前致谢。
取决于您如何构建和 运行 容器。如果您有一个 Docker 文件并在其中指定 COPY 或 ADD /my/files/ /to/container/path 这将导致在容器内复制 /my/files 并创建一个新的图像层(您在 Docker 文件中 运行 的每个命令都会创建一个新层)
这意味着它会在那个时间点对您的文件进行 快照,并将其复制到 Docker 图像。
但是,如果您只使用 docker-compose 文件和 mount 这些文件,这些文件将 共享 在你的主机和容器之间。这意味着您可以在本地主机上编辑文件并立即与容器同步,反之亦然。