docker打包:减少每次更新都传输大量文件

2024年12月19日
首页博客

最近在打包一个应用时需要将node环境打包进去,然后每次上传到阿里云镜像中心都需要上传多个文件,恰逢最近阿里镜像上传有点慢,每次更新应用上传镜像都花费大量时间。那么有没有办法可以减少每次更新的上传大小吗?

经了解,docker的系统镜像文件是堆叠的,一般构建镜像是都会from一个基础镜像,新的镜像会在基础镜像上面增删改文件生成,那么为了每次更新不需要重复上传一些已有的文件,那么可以考虑将静态不会变动的文件打到一个中间镜像,比如我需要依赖一个node环境,那么我先将node打进一个中间镜像,然后最终的程序镜像再基于这个中间镜像构建。这样每次更新程序包,只需要打最终一个镜像即可,这样每次上传镜像到镜像中心就会小很多,node等环境就不会重复上传。