Docker build 默認會利用構(gòu)建緩存來加速構(gòu)建過程
--no-cache
選項:在運行 docker build
命令時,添加 --no-cache
選項可以禁用構(gòu)建緩存。這將確保每次構(gòu)建都從頭開始,不使用之前構(gòu)建的緩存。
docker build --no-cache -t your-image-name .
--build-arg
選項:通過使用 --build-arg
選項,您可以在構(gòu)建過程中更改 Dockerfile 中的參數(shù)。這將導(dǎo)致 Docker 忽略與這些參數(shù)相關(guān)的緩存層。
例如,如果您希望在構(gòu)建過程中更改 DEBUG
變量的值,可以在 Dockerfile 中使用 ARG
指令定義它,然后在構(gòu)建時使用 --build-arg
選項設(shè)置新值:
# Dockerfile
ARG DEBUG=false
...
docker build --build-arg DEBUG=true -t your-image-name .
--cache-from
選項:如果您希望明確指定要使用的緩存來源,可以使用 --cache-from
選項。這可以幫助您更好地控制構(gòu)建緩存的使用。
例如,您可以使用以下命令將名為 my-base-image
的鏡像作為緩存來源:
docker build --cache-from my-base-image:latest -t your-image-name .
請注意,這些方法可以幫助您更好地控制 Docker 構(gòu)建緩存。然而,在某些情況下,您可能需要手動清理緩存以解決特定問題。在這種情況下,您可以使用 docker image prune
命令刪除不再使用的鏡像和容器,以釋放磁盤空間。