docker - 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
这个上下文会被共享还是会为第二个图像再次创建。我有一个包含这两个应用程序的目录结构,因此我无法确定上下文的大小以及它是被复制两次还是一次。我也浏览了官方文档,但找不到与此相关的任何内容。如果有人可以向我指出一些资源或可以帮助我解决这个问题。谢谢
解决方案
因此,在您的情况下,您有两个服务WebApplication
,webApplication2
docker 将分别构建这些服务并将上下文发送给它们。
存储在容器映像中的内容将取决于您使用这两个服务的 Dockerfile 的ADD
和语句。COPY
你不能优化只发送一次上下文,你也不应该担心它,因为不会对你产生影响
推荐阅读
- greatest-common-divisor - 列表 L1 中每个元素的 TI-84 Plus CE gcd
- android - 使用 minifyEnabled 和 proguard 时如何将崩溃日志转换为可读形式?
- java - 使用 JasperFillManager.fillReport 方法得到“java.io.StreamCorruptedException: invalid stream header”
- assembly - ARM 汇编,在循环后使用 ldr 保持相同的 r2
- reactjs - 如何在类组件中使用 useSelector?
- algorithm - 资产价格是如何从证券交易所的订单簿中计算出来的?
- reactjs - 在反应钩子中输入输入数据到 api 的端点查询
- c - 如何使用循环停在特定数字
- xcode - 返回 int 以在 swiftUI 中用作变量
- c# - Unity中鼠标的反转