python docker 镜像过大_【转】六种减小Docker镜像大小的方法

转自P牛,vulnhub作者,擅长代码审计和漏洞挖掘,今天看到他的公众号发了一篇这个,正好平时自己的工作也有需求,整理记录如下。

=========================================

我从2017年做Vulhub开始,一直在和一个麻烦的问题做斗争:在编写Dockerfile的时候,如何减小docker build生成的镜像大小?这篇文章就给大家总结一下我自己使用过的六种减小镜像大小的方法。

1. 使用Alpine Linux

Alpine Linux是一个基于BusyBox和Musl Libc的Linux发行版,其最大的优势就是小。一个纯的基础Alpine Docker镜像在压缩后仅有2.67MB。

不少Docker官方镜像都有Alpine版本,比如PHP:

比较之下就可以发现,alpine版本镜像大小是普通版本的1/5左右。

但是在Docker Hub中,大部分镜像是没有Alpine版本的,比如Mysql和PHP-Apache,如果我们需要基于这些环境开发,就不得不自己编写Alpine版本,或者找一些第三方镜像。

另外,Alpine的另一个缺点是,其使用了Musl Libc作为传统的glibc的替代,编译软件的时候可能会遇到

你可能感兴趣的:(python,docker,镜像过大)