docker build过慢问题

发布时间 2023-09-28 20:18:35作者: 06

有一个前端项目,在我删除了node_modules之后,构建非常慢,半个小时都没执行完

一直以为是jenkins问题,重启了也没用,一直卡在docker build步骤,后来干脆就挂着执行,执行完查看日志

后来看到 Sending build context to Docker daemon 932 MB

好家伙,一个前端项目项目最多20M,怎么会这么大,查找一番才知道原因:

docker client会默认把Dockerfile同级所有文件发给docker Deamon中,因为目录下有node_modules文件,有几百兆

 

我这个原因显而易见,Dockerfile在目录最外层,和node_modules同级,docker把node_modules也加进去了。。

解决办法有两种:

1.使用.dockerignore文件,设置黑名单,该文件包含的目录不会被发送到Docker daemon中

2.将Dockerfile迁移后其他目录中执行。

3.将不需要的文件删除

 

添加.dockerignore文件,填入 node_modules之后恢复正常

 

那之前为啥没发现呢,可能是docker有缓存吧,之前加过了,所以后面没再加

 

参考文档:https://blog.csdn.net/xxradon/article/details/87362779