鏡像是 Docker 容器的基石,容器是鏡像的運行實例,有了鏡像才能啟動容器。 本章內容安排如下: 首先通過研究幾個典型的鏡像,分析鏡像的內部結構。 然后學習如何構建自己的鏡像。 最后介紹怎樣管理和分發鏡像。 鏡像的內部結構 為什么我們要討論鏡像的內部結構 ...
Docker 支持通過擴展現有鏡像,創建新的鏡像。 實際上,Docker Hub 中 的鏡像都是通過在 base 鏡像中安裝和配置需要的軟件構建出來的。比如我們現在構建一個新的鏡像,Dockerfile 如下: 新鏡像不再是從 scratch 開始,而是直接在 Debian base 鏡像上構建。 安裝 emacs 編輯器。 安裝 apache 。 容器啟動時運行 bash。 構建過程如下圖所示: ...
2017-05-05 06:42 10 12130 推薦指數:
鏡像是 Docker 容器的基石,容器是鏡像的運行實例,有了鏡像才能啟動容器。 本章內容安排如下: 首先通過研究幾個典型的鏡像,分析鏡像的內部結構。 然后學習如何構建自己的鏡像。 最后介紹怎樣管理和分發鏡像。 鏡像的內部結構 為什么我們要討論鏡像的內部結構 ...
上一節我們介紹了最小的 Docker 鏡像,本節討論 base 鏡像。 base 鏡像有兩層含義: 不依賴其他鏡像,從 scratch 構建。 其他鏡像可以之為基礎進行擴展。 所以,能稱作 base 鏡像的通常都是各種 Linux 發行版的 Docker 鏡像 ...
鏡像是 Docker 容器的基石,容器是鏡像的運行實例,有了鏡像才能啟動容器。為什么我們要討論鏡像的內部結構? 如果只是使用鏡像,當然不需要了解,直接通過 docker 命令下載和運行就可以了。 但如果我們想創建自己的鏡像,或者想理解 Docker 為什么是輕量級的,就非常有必要學習這部分知識 ...
鏡像,因為 Docker 的工程師知道如何更好的在容器中運行軟件。 當然,某些情況下我們也不得不自己構 ...
上一節我們學習了鏡像的分層結構,今天討論鏡像的緩存特性。 Docker 會緩存已有鏡像的鏡像層,構建新鏡像時,如果某鏡像層已經存在,就直接使用,無需重新創建。 舉例說明。在前面的 Dockerfile 中添加一點新內容,往鏡像中復制一個文件: root@ubuntu:~# ls ...
Dockerfile 是一個文本文件,記錄了鏡像構建的所有步驟。 第一個 Dockerfile 用 Dockerfile 創建上節的 ubuntu-with-vi,其內容則為: 下面我們運行 docker build 命令構建鏡像並詳細分析每個細節。 root@ubuntu ...
我們已經學會構建自己的鏡像了。接下來的問題是如何在多個 Docker Host 上使用鏡像。 這里有幾種可用的方法: 用相同的 Dockerfile 在其他 host 構建鏡像。 將鏡像上傳到公共 Registry(比如 Docker Hub),Host 直接下載使用 ...
本節我們對 Docker 鏡像做個小結。 這一部分我們首先討論了鏡像的分層結構,然后學習了如何構建鏡像,最后實踐使用 Docker Hub 和本地 registry。 下面是鏡像的常用操作子命令: images 顯示鏡像列表 history 顯示鏡像構建歷史 commit ...