萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> Linux創建自定義Docker映像的方法

Linux創建自定義Docker映像的方法

  Docker是一個開源項目,因為其沒有語言支持、框架和打包系統的限制,因此使用范圍非常的廣泛,用戶們也可以在自己的電腦中安裝Docker。對於Docker,許多人都知道要創建自己的Docker映像。那麼怎麼創建呢?現在小編就教大家創建的方法。

  Docker 映像是不可更改的只讀層。Docker 使用 Union File System 在只讀文件系統上增加可讀寫的文件系統,但所有更改都發生在最頂層的可寫層,而其下的只讀映像上的原始文件仍然不會改變。由於映像不會改變,也就沒有狀 態。基本映像是沒有父類的那些映像。Docker 基本映像主要的好處是它允許我們有一個獨立運行的 Linux 操作系統。

Linux創建自定義Docker映像的方法

  創建Docker映像的方法:

  1. 使用 Tar 創建 Docker 基本映像

  我們可以使用 tar 構建我們自己的基本映像,我們從一個運行中的 Linux 發行版開始,將其打包為基本映像。這過程可能會有些不同,它取決於我們打算構建的發行版。在 Debian 發行版中,已經預帶了 debootstrap。在開始下面的步驟之前,我們需要安裝 debootstrap。debootstrap 用來獲取構建基本系統需要的包。這裡,我們構建基於 Ubuntu 14.04 “Trusty” 的映像。要完成這些,我們需要在終端或者 shell 中運行以下命令。

  $ sudo debootstrap trusty trusty 》 /dev/null

  $ sudo tar -C trusty -c 。 | sudo docker import - trusty

Linux創建自定義Docker映像的方法

  上面的命令為當前文件夾創建了一個 tar 文件並輸出到標准輸出中,“docker import - trusty” 通過管道從標准輸入中獲取這個 tar 文件並根據它創建一個名為 trusty 的基本映像。然後,如下所示,我們將運行映像內部的一條測試命令。

  $ docker run trusty cat /etc/lsb-release

  Docker GitHub Repo 中有一些允許我們快速構建基本映像的事例腳本。

  2. 使用Scratch構建基本映像

  在 Docker registry 中,有一個被稱為 Scratch 的使用空 tar 文件構建的特殊庫:

  $ tar cv --files-from /dev/null | docker import - scratch

Linux創建自定義Docker映像的方法

  我們可以使用這個映像構建新的小容器:

  FROM scratch

  ADD script.sh /usr/local/bin/run.sh

  CMD [“/usr/local/bin/run.sh”]

  上面的 Dockerfile 文件來自一個很小的映像。這裡,它首先從一個完全空的文件系統開始,然後它復制新建的 /usr/local/bin/run.sh 為 script.sh ,然後運行腳本 /usr/local/bin/run.sh。

  看完了上面的方法步驟後,你就可以在自己的電腦上創建屬於自己的Docker映像了,遇到不懂的地方,就再看一遍這篇教程吧。

copyright © 萬盛學電腦網 all rights reserved