追求極簡化 Docker image 之路
(william-yeh.github.io)
IngramChen
積分 0
300MB 降到 10 MB 以下真的很厲害。
在實務上很小的 image 好處是在部署超快嗎?(因為一下就傳完了? )
用save跟load指令搬移image的時候會比較快
部署速度的話,只有第一次pull image的時候會比較快,因為image容量比其他base image小
我比較不會無限上綱到每一個 image 都要壓到這麼小,會比較一下 C/P 值。
像以下這堆 Java 的 image,就不太值得:
REPOSITORY TAG VIRTUAL SIZE
------------------------- ------ ------------
jeanblanchard/busybox-java latest 162 MB
jeanblanchard/busybox-java 7 146.5 MB
jeanblanchard/busybox-java jdk7 147.6 MB
jeanblanchard/busybox-java jdk8 163.8 MB
errordeveloper/oracle-jdk latest 303.6 MB
errordeveloper/oracle-jre latest 159.4 M
目前個人的感覺是,很少 runtime dependency 的小工具(尤其是原本就是用 C/C++ 或 Go 寫的小工具),比較值得做這種處理。如果是 server 程式,反而比較適合留在原本的 debian:jessie
上面,享受比較多的 runtime 支援,也不必小心翼翼處理『拆除 dependency』的環節。