本文重點(diǎn)給大家介紹docker鏡像、容器、倉庫的基本概念的知識(shí)。
Docker概念
Docker 是一個(gè)開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個(gè)可移植的容器中,然后發(fā)布到任何流行的 Linux 機(jī)器上,也可以實(shí)現(xiàn)虛擬化。容器是完全使用沙箱機(jī)制,相互之間不會(huì)有任何接口。
鏡像
Docker 鏡像就是一個(gè)只讀的模板。
例如:一個(gè)鏡像可以包含一個(gè)完整的 CentOS 操作系統(tǒng)環(huán)境,里面僅安裝了 httpd或用戶需要的其它應(yīng)用程序。
鏡像可以用來創(chuàng)建 Docker 容器。
Docker 提供了一個(gè)很簡單的機(jī)制來創(chuàng)建鏡像或者更新現(xiàn)有的鏡像,用戶甚至可以直接從其他人那里下載一個(gè)已經(jīng)做好的鏡像來直接使用。
容器
Docker 利用容器來運(yùn)行應(yīng)用。
容器是從鏡像創(chuàng)建的運(yùn)行實(shí)例。它可以被啟動(dòng)、開始、停止、刪除。每個(gè)容器都是相互隔離的、保證安全的平臺(tái)。
可以把容器看做是一個(gè)簡易版的 Linux 環(huán)境(包括root用戶權(quán)限、進(jìn)程空間、用戶空間和網(wǎng)絡(luò)空間等)和運(yùn)行在其中的應(yīng)用程序。
*注:鏡像是只讀的,容器在啟動(dòng)的時(shí)候創(chuàng)建一層可寫層作為最上層。
倉庫
倉庫是集中存放鏡像文件的場所。有時(shí)候會(huì)把倉庫和倉庫注冊(cè)服務(wù)器(Registry)混為一談,并不嚴(yán)格區(qū)分。實(shí)際上,倉庫注冊(cè)服務(wù)器上往往存放著多個(gè)倉庫,每個(gè)倉庫中又包含了多個(gè)鏡像,每個(gè)鏡像有不同的標(biāo)簽(tag)。
倉庫分為公開倉庫(Public)和私有倉庫(Private)兩種形式。
最大的公開倉庫是 Docker Hub,存放了數(shù)量龐大的鏡像供用戶下載。 其作為默認(rèn)docker倉庫,但在國內(nèi)下載速度很慢。當(dāng)然,用戶也可以在本地網(wǎng)絡(luò)內(nèi)創(chuàng)建一個(gè)私有倉庫。當(dāng)用戶創(chuàng)建了自己的鏡像之后就可以使用 push 命令將它上傳到公有或者私有倉庫,這樣下次在另外一臺(tái)機(jī)器上使用這個(gè)鏡像時(shí)候,只需要從倉庫上 pull 下來就可以了。
*注:Docker 倉庫的概念跟 Git 類似,注冊(cè)服務(wù)器可以理解為 GitHub 這樣的托管服務(wù)。
docker容器安裝
RedHat/CentOS必須要6.6版本以上,或者7.x才能安裝docker,建議在RedHat/CentOS 7上使用docker,因?yàn)镽edHat/CentOS 7的內(nèi)核升級(jí)到了kernel 3.10,對(duì)lxc容器支持更好。
centos6.6安裝docker
1
2
3
4
5
|
rpm -ivh http: //mirrors .yun-idc.com /epel/6Server/x86_64/epel-release-6-8 .noarch.rpm yum install docker-io chkconfig docker on service docker start docker version |
啟動(dòng)遇到的問題
問題:Docker#docker dead but pid file exists
解決方法:
1
2
|
yum-config-manager -- enable public_ol6_latest yum install device-mapper-event-libs |
以上所述是小編給大家介紹的docker鏡像、容器、倉庫的基本概念,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)服務(wù)器之家網(wǎng)站的支持!
原文鏈接:http://www.cnblogs.com/kafeikele/archive/2016/10/27/6002526.html