Docker瘦身记
自从升级mac OSX 到Sierra, 免费版的Lantern就闪退,无法使用了,想尝试着在Docker里运行,于是在Github上闲逛,寻找合适的Lantern Docker, Lantern的Docker尝试了好几个,也自己动手制作了几个,但有一个共同的毛病,太大,我做的一个基于min-jessie版本的,也超过230M,今天碰巧发现了一个,竟然只有26.62M,
Dockerfile内容非常简单,仅仅依赖busybox:glibc,
FROM busybox:glibc #COPY ./lantern_linux_amd64 /lantern_linux_amd64 COPY ./lantern_linux_amd64.xz /lantern_linux_amd64.xz RUN xz -d /lantern_linux_amd64.xz COPY ./lib /lib COPY ./tmp /tmp EXPOSE 8787 CMD ["/lantern_linux_amd64", "-addr", "0.0.0.0:8787"]
26.62M的Docker,解压缩后的lantern_linux_amd64自己占了17M,查了下,依赖库只有4个,这让我对这种Docker的生成方式产生了浓厚的兴趣,于是网上寻找Docker瘦身的方法,没有想到竟然找到了,Squashing Docker Images
>ldd lantern_linux_amd64 linux-vdso.so.1 (0x00007fff42b4e000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f95b465d000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f95b42b2000) /lib64/ld-linux-x86-64.so.2 (0x0000562c6cb13000)
未完,待续!
references,
Smaller Docker containers for Go apps