深入了解docker(docker鏡像、容器、倉庫的基本概念)
本文重點(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ì)把倉庫和倉庫注冊服務(wù)器(Registry)混為一談,并不嚴(yán)格區(qū)分。實(shí)際上,倉庫注冊服務(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 類似,注冊服務(wù)器可以理解為 GitHub 這樣的托管服務(wù)。
docker容器安裝
RedHat/CentOS必須要6.6版本以上,或者7.x才能安裝docker,建議在RedHat/CentOS 7上使用docker,因?yàn)镽edHat/CentOS 7的內(nèi)核升級到了kernel 3.10,對lxc容器支持更好。
centos6.6安裝docker
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
解決方法:
yum-config-manager --enable public_ol6_latest yum install device-mapper-event-libs
以上所述是小編給大家介紹的docker鏡像、容器、倉庫的基本概念,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
Docker鏡像推送(push)到Docker Hub的實(shí)現(xiàn)
這篇文章主要介紹了Docker鏡像推送(push)到Docker Hub的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09Docker部署MySQL主從復(fù)制的實(shí)現(xiàn)
本文主要介紹了Docker部署MySQL主從復(fù)制的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-10-10docker搭建nginx實(shí)現(xiàn)負(fù)載均衡的示例代碼
本隨著互聯(lián)網(wǎng)應(yīng)用規(guī)模不斷擴(kuò)大,原有的單一服務(wù)器已經(jīng)無法滿足高并發(fā)和高可用性的要求,本文就來介紹docker搭建nginx實(shí)現(xiàn)負(fù)載均衡的示例代碼,感興趣的可以了解一下2023-12-12maven構(gòu)建docker鏡像push到鏡像倉庫方式
這篇文章主要介紹了maven構(gòu)建docker鏡像push到鏡像倉庫方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11使用Docker創(chuàng)建FTP服務(wù)器的過程解析
這篇文章主要介紹了使用Docker創(chuàng)建FTP服務(wù)器的過程解析,使用?Docker?搭建?FTP?服務(wù),不僅十分簡單,而且可以對宿主機(jī)有一定的隔離,對Docker創(chuàng)建FTP服務(wù)器的過程感興趣的朋友一起看看吧2022-04-04使用Maven打包構(gòu)建Docker鏡像并推送到倉庫
這篇文章主要介紹了使用Maven打包構(gòu)建Docker鏡像并推送到倉庫問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04如何使用Docker部署Xxl-Job分布式任務(wù)調(diào)度中心
XXL-Job是一個(gè)開源的分布式任務(wù)調(diào)度中心,它提供了一個(gè)可視化的任務(wù)管理界面,可以方便地創(chuàng)建、編輯和監(jiān)控任務(wù),本文詳細(xì)的講解了如何使用Docker部署xxl-job分布式任務(wù)調(diào)度服務(wù),感興趣的朋友跟隨小編一起看看吧2024-03-03Docker之蘋果Mac安裝Docker的兩種方式小結(jié)
這篇文章主要介紹了Docker之蘋果Mac安裝Docker的兩種方式小結(jié),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04