Docker入門與實戰——《Docker ABC》電子書 https://github.com/gudaoxuri/Docker_ABCgit
Docker is an open platform for building, shipping and running distributed applications. It gives programmers, development teams and operations engineers the common toolbox they need to take advantage of the distributed and networked nature of modern applications.程序員
— docker.comgithub
這是來自Docker官網的說明,其中有兩層意思:docker
docker能夠幹什麼?app
它能夠用於編譯(building)、分發(shipping)、運行(running)分佈式應用。運維
誰用docker?maven
程序員(programmers)、開發團隊(development teams)、運維工程師(operations engineers)。分佈式
這貨就是精簡版的VM虛擬機,在犧牲了必定的資源隔離性的狀況下實現了極小的資源佔用、極快地啓動/中止,它能夠方便地共享/獲取公共應用(鏡像),經過Dockfile 更能夠方便地構建本身的應用(鏡像)。 |
延伸閱讀: Docker與VM的區別ui
在正式使用Docker前咱們先簡述幾個核心概念。spa
Image(鏡像)
與咱們熟知的Windows
鏡像(ISO或安裝光盤)相似,能夠理解爲一份特定應用的Copy,它是隻讀的。
Container(容器)
鏡像是不能直接運行的,只有安裝後才能使用,容器就是這個運行鏡像後的實例,咱們能夠修改實例。
Dockerfile
用於製做鏡像的元文件,有點相似Maven
的pom.xml
文件,能夠經過它構建一個鏡像。
hub.docker.com
鏡像發佈共享的地方,與search.maven.org
相似。
它們之間的關係以下: