docker compose的共享构建上下文



我使用docker compose来构建图像,而不是使用现有图像,我使用构建上下文和docker文件位置。像这样的

version: '3.4'
services:  
WebApplication:
image: webapplication:build
build:
context: .
dockerfile: ./WebApplication/Dockerfile
ports:
- "8080:80"
volumes:
- C:Abcfolder:C:Abcfolder 

我的问题是,如果我添加另一项服务,比如这个

webApplication2:
image: webapplication2:build
build:
context: .
dockerfile: ./webapplication2/Dockerfile
volumes:
- C:Abcfolder:C:Abcfolder

该上下文将被共享还是将被再次创建用于第二图像。我有一个包含这两个应用程序的目录结构,所以我无法计算上下文的大小,以及它是被复制两次还是只复制一次。此外,我查阅了官方文件,但找不到任何与此相关的内容。如果有人能给我指一些资源,或者能帮我解决这个问题。感谢

因此,在您有两个服务WebApplicationwebApplication2的情况下,docker将分别构建这些服务,并将上下文发送给这两个服务。

容器映像中存储的内容将取决于使用这两个服务的Dockerfile的ADDCOPY语句。

你不能只优化一次发送上下文,你也不应该担心,因为这对你的没有影响

最新更新