Docker compose up --force-recreate --build 使用缓存,但我不希望它这样做
·
问题:Docker compose up --force-recreate --build 使用缓存,但我不希望它这样做
我有以下命令来强制重新创建我的所有容器:
docker-compose up --force-recreate --build
但是,我仍然看到以下行*:
Step 6/10 : RUN cp environment-prod-docker.js environment.js
---> Using cache
---> e9a2354577ef
Step 7/10 : RUN cat environment.js
---> Using cache
---> ccbc732030ea
Step 8/10 : RUN npm ci --only=production
---> Using cache
---> 6baeabd30cf7
如何禁用该缓存? (例如,它不会重建我的应用程序。)
我已经发现,在给定容器上使用这个特定命令会重新构建它:
docker-compose build --no-cache
但由于特定原因,我需要使用单行 build'n'start 命令,那么有什么方法可以用docker-compose up生成这个命令吗?
我正在使用 docker-compose.yml 版本“3.4”。
*:Dockerfile 是这样的:
...
RUN cp environment-prod-docker.js environment.js
RUN cat environment.js
RUN npm ci --only=production
...
解答
据我所知,您无法阻止docker-compose up使用构建缓存。我发现有效地做到这一点的唯一方法是首先运行:
docker builder prune
这将完全清除构建器缓存,这将导致在下次运行docker-compose up时完全重建。
更多推荐
所有评论(0)