gpt4 book ai didi

docker - 我可以从远程容器存储库 "rehydrate"docker 构建缓存吗?

转载 作者:行者123 更新时间:2023-12-02 14:18:08 28 4
gpt4 key购买 nike

TL;DR

我正在使用 docker build 构建 ASP.NET 应用程序;当我在本地计算机上运行构建时,它会快速执行,因为我正在使用 Build cache .

Step 1/10 : FROM microsoft/aspnetcore-build:2.0.0 as identity-build
---> c5549d4c5716
Step 2/10 : ENV DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
---> Using cache
---> 060911817d8c
Step 3/10 : WORKDIR /publish
---> Using cache
---> 851e87c05c42

我尝试在 AppVeyor CI 上执行相同的操作,但由于 AppVeyor 为每个构建提供了一个干净的 VM 镜像,因此没有缓存。

我尝试过从私有(private)容器存储库中提取构建镜像,但这似乎并没有“重新水化镜像缓存”,因此没有缓存命中。

背景

我创建了一个example GitHub repo ,以及相关的build in AppVeyor我正在尝试。

我尝试从私有(private)容器存储库恢复构建镜像,但这并没有导致任何缓存命中。

我试图通过使用 docker 构建缓存来实现两个目标。

  1. 构建速度更快。
  2. 确定代码是否已更改,并据此决定是否需要部署。

首先,我只是想重新补充构建缓存,并从那里继续进行实验。

最佳答案

看来一夜好眠和尝试提出这个问题的行为结合起来帮助了我的 Google-fu ,因为我现在找到了答案:-)

可以通过 --cache-from 参数指示 docker build 使用镜像作为其缓存。

例如(取自 here )

docker pull myimage:v1.0
docker build --cache-from myimage:v1.0 -t myimage:v1.1 .

关于docker - 我可以从远程容器存储库 "rehydrate"docker 构建缓存吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49851203/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com