Docker基礎鏡像分層是Docker鏡像的基礎結構和重要特性之一。
在Docker中,每一個鏡像都是由一系列分層組成的,這些分層以可讀可變的文件系統格式存儲,每一層都可以看成一個獨立的文件系統。
具體來說,基礎鏡像分層是構建鏡像時的第一層。
FROM ubuntu:20.04 MAINTAINER dockeruser RUN apt-get update && apt-get install -y \ vim \ curl \ wget \ && rm -rf /var/lib/apt/lists/*
在這個例子中,FROM ubuntu: 20.04指定了基礎鏡像,并將它作為構建Docker鏡像的第一層。
我們通過RUN命令來安裝必要的軟件包,這是鏡像第二層,并將修改存儲為第三層。
$ docker history example IMAGE CREATED CREATED BY SIZE COMMENT a81a0430c5bf 5 minutes ago /bin/sh -c #(nop) CMD ["python3"] 0B 056d922a0344 6 minutes ago /bin/sh -c #(nop) ENTRYPOINT ["docker-entry… 0B eda856f8a98e 6 minutes ago /bin/sh -c #(nop) COPY file:6c94901f78d93bce… 1.23MB f9ceb791e2d2 6 minutes ago /bin/sh -c apt-get update && apt-get install… 73.5MB 3d3d21c89ca8 2 weeks ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0B <missing> 2 weeks ago /bin/sh -c mkdir -p /run/systemd && echo 'do… 7B
通過docker history example 命令查看鏡像分層信息,我們可以看到Docker鏡像是由多個分層組合而成,每一層都是可讀可變的文件系統格式,并且可以被復用。