什么是 Docker 原始鏡像?
Docker 原始鏡像是指通過 Docker 的構(gòu)建流程生成的鏡像文件,它是所有其他 Docker 鏡像的基礎(chǔ)。一個(gè) Docker 鏡像通常都是由多個(gè)層次的鏡像疊加而成,而最底層的鏡像即為 Docker 原始鏡像。
在 Docker 中,我們可以使用 Dockerfile 定義構(gòu)建流程,從而生成一個(gè)名為“l(fā)atest”的 Docker 原始鏡像:
# Dockerfile FROM ubuntu RUN apt update RUN apt install -y python3-pip RUN pip3 install flask
在上面的 Dockerfile 中,我們首先使用了 FROM 命令指定基礎(chǔ)鏡像為 Ubuntu,然后通過 RUN 命令更新源和安裝 Python3 及 Flask 等依賴。
之后,我們可以通過 Docker build 命令來構(gòu)建鏡像文件:
$ docker build -t myapp .
在構(gòu)建過程中,Docker 將會(huì)逐行執(zhí)行 Dockerfile 的腳本,生成對(duì)應(yīng)的鏡像文件。完成構(gòu)建后,我們可以使用 Docker images 命令列出所有鏡像文件:
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE myapp latest ef2d6f744309 5 seconds ago 216MB ubuntu latest b97b1ca2935a 5 days ago 72.9MB
可以看到,我們的應(yīng)用程序鏡像 myapp 及其最底層的原始鏡像 Ubuntu 都已經(jīng)成功構(gòu)建出來了。而 myapp 鏡像繼承了 Ubuntu 鏡像的所有層次,同時(shí)添加了自己的應(yīng)用程序?qū)印R虼耍趩?dòng)應(yīng)用程序時(shí),Docker 會(huì)使用 Ubuntu 鏡像和應(yīng)用程序?qū)庸餐瑯?gòu)成完整的鏡像,從而運(yùn)行鏡像中的應(yīng)用程序。