docker build 过慢问题

使用

docker build -t swr.cn-north-4.myhuaweicloud.com/test/test:v1.0 .

发现刚开始会有这么一句话,意思是:正在将生成上下文发送到Docker守护程序。

Sending build context to Docker daemon    776MB

如果dockerfile的同级目录文件过多过大,比如,node_modules文件夹。docker build的时候会向上下文环境发送,导致很慢,这个时候的解决办法有:

  1. 使用.dockerignore文件,设置黑名单,该文件包含的目录不会被发送到Docker daemon中
  2. 将Dockerfile迁移后其他目录中执行。
  3. 将不需要的文件删除

第一种方式:就是增加一个.dockerignore文件,如果build命令在dockerfile文件下,在dockerfile的目录下创建.dockerignore文件。如果build命令不在dockerfile文件下,那就放到执行命令的那个目录下

./node_modules
./public
./src

表示当前执行dockerfile的路径下,node_modules,public,src文件不上传,如果dockerfile中使用了某个文件,那就不能忽略的!!!在build 一下快好多的。
::: warning
build命令在哪个文件夹下执行,.dockerignore文件 就放到执行哪个目录下
:::

第二种方式:如果只是移动了dockerfile文件,而执行build命令的位置没有随之改变的话,是不起作用的。

posted @ 2022-06-08 09:10  xionghaizhi  阅读(3806)  评论(0编辑  收藏  举报