首頁  >  文章  >  運維  >  docker基礎映像有哪些

docker基礎映像有哪些

青灯夜游
青灯夜游原創
2021-12-30 17:12:316222瀏覽

基礎鏡像有:1、套用鏡像(nginx、redis、mongo、mysql、httpd、php、tomcat等);2、程式語言鏡像(node、oraclejdk、openjdk、python、golang等);3 、空白鏡像「scratch」。

docker基礎映像有哪些

本教學操作環境:linux5.9.8系統、docker-1.13.1版、Dell G3電腦。

Docker基礎映像像是什麼

我們通常會以一個映像為基礎,在其上進行定制,這就是基礎映像。

就像是運行了一個 nginx 映像檔的容器,再進行修改一樣。在DockerFile中基礎映像像是必須指定的(FROM 就是指定基礎映像,因此一個Dockerfile 中FROM 是必備的指令,而且必須是第一指令)

例如建構一個Java應用的映像,選擇一個Oracle JDK的鏡像作為基礎鏡像比選擇一個alpine鏡像作為基礎鏡像更方便。

Docker基礎映像有哪些

在Docker Hub 上有非常多的高品質的官方鏡像,可以在其中尋找一個最符合我們最終目標的鏡像為基礎鏡像進行客製化。

應用程式映像,如nginxredismongomysqlhttpdphptomcat 等;

有方便開發、建構、運行各種語言應用的程式語言鏡像,如nodeoraclejdkopenjdkpythonrubygolang 等。

還有更基礎的作業系統映像,如ubuntudebiancentos fedoraalpine 等,這些作業系統的軟體庫為我們提供了更廣闊的擴充空間。

除了選擇現有映像為基礎映像外,Docker 還存在一個特殊的映像,名為 scratch#。這個鏡像是虛擬的概念,並不實際存在,它表示一個空白的鏡像。

如果你在DockerFIle中以scratch 為基礎映像的話(FROM scratch),表示你不以任何映像為基礎,接下來所寫的指令將作為鏡像第一層開始存在。不以任何系統為基礎,直接將可執行檔複製進鏡像的做法並不罕見,例如 swarmcoreos/etcd。對於Linux 下靜態編譯的程式來說,並不需要有作業系統提供運行時支持,所需的一切庫都已經在可執行檔裡了,因此直接FROM scratch 會讓鏡像體積更加小巧。 使用 Go 語言 開發的應用程式很多會使用這種方式來製作鏡像,這也是為什麼有人認為 Go 是特別適合容器微服務架構的語言的原因之一。

推薦學習:《docker影片教學

以上是docker基礎映像有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn