我使用jenkins 2.387.2通过jenkins helm chart https://github.com/jenkinsci/helm-charts/tree/main/charts/jenkins构建图像。
为此,我使用了一个podman代理在values.yaml
中构建映像
...
podman:
podName: podman
customJenkinsLabels: podman
image: podman-agent
tag: 0.1
alwaysPullImage: false #true
volumeMounts:
- mountPath: "/home/jenkins/agent"
name: "workspace-volume"
readOnly: false
workingDir: "/home/jenkins/agent"
字符串
对于每个管道,jenkins创建一个新的podman代理,管道在其中执行所有构建步骤。
我想为每个作业使用构建缓存来减少构建时间。现在,我正在提取上一个图像进行缓存,并使用--cache-from
参数:
docker build -t ${repository}:${env.BUILD_NUMBER} -f ./Dockerfile --cache-from ${repository}:latest .
型
有没有一种方法可以使用缓存构建从以前的代理到当前的代理?
1条答案
按热度按时间xyhw6mcr1#
为了充分利用缓存,我将使用两个参数。首先是--layers和--cache-to。有了这些,你将在本地缓存所有层,然后将它们推送到注册表,在那里你将存储你的缓存。在这种情况下,作业A将构建一些图像并将缓存层推送到注册表,并且如果某些层相同,则作业B将重用此缓存。