以每周一个节点,记录知识点。
2024-08-05~11
清理单个docker buildkit cache
docker buildkit cache
使用方式
FROM harbor.ickey.com.cn/common/node:16.15-debian10 as builder
ARG APP=undefined \
APP_ENV=test
ENV APP=$APP \
APP_ENV=$APP_ENV
WORKDIR /app_build
COPY ./ ./
RUN --mount=type=cache,id=${APP}-npm,target=/root/.npm \
--mount=type=cache,id=${APP}-modules,target=./node_modules \
npm install && npm run build:${APP_ENV}
docker buildkit cache
本地信息
# docker buildx du --verbose
# 会输出以下内容
ID: o46ii19k9r4ripvx799m7rbf1
Created at: 2024-08-06 07:50:14.265215424 +0000 UTC
Mutable: true
Reclaimable: true
Shared: false
Size: 338.7MB
Description: cached mount /app_build/node_modules from exec /bin/sh -c npm install && cd packages/${APP} && npm run build:${APP_ENV}
通过上面两个信息来看,是没办法通过id
关键字来匹配上的,只能通过Description中的挂载目录关键字来查找,然后进行删除清理。
docker buildx du --verbose | grep -B6 node_modules | awk '/ID:/ {print $2}' | xargs -I{} docker buildx prune --filter="ID={}" -f --verbose