淺談Windows平臺上Docker安裝與使用
Docker溯源
Docker的前身是名為dotCloud的小公司,主要提供的是基于 PaaS(Platform as a Service,平臺及服務(wù))平臺為開發(fā)者或開發(fā)商提供技術(shù)服務(wù),并提供的開發(fā)工具和技術(shù)框架。因?yàn)槠錇槌鮿?chuàng)的公司,又生于IT行業(yè),dotCloud受到了IBM,亞馬遜,google等公司的擠壓,發(fā)展舉步維艱。于是,在2013年dotCloud 的創(chuàng)始人,年僅28歲的Solomon Hykes做了一個艱難的決定:將dotCloud的核心引擎開源!然而一旦這個基于 LXC(Linux Container)技術(shù)的核心管理引擎開源,dotCloud公司就相當(dāng)于走上了一條"不歸路"??烧沁@個孤注一擲的舉動,卻帶來了全球技術(shù)人員的熱潮,眾程序員驚呼:太方便了,太方便了。也正是這個決定,讓所有的IT巨頭也為之一顫。一個新的公司也隨之出世,它就是:Docker??梢哉f,Docker是一夜成名的!!
Docker認(rèn)識
鏡像,容器,倉庫
首先,需要了解一下幾個概念:鏡像,容器,倉庫
鏡像(image):Docker 鏡像就是一個只讀的模板,鏡像可以用來創(chuàng)建 Docker 容器。Docker 提供了一個很簡單的機(jī)制來創(chuàng)建鏡像或者更新現(xiàn)有的鏡像,用戶甚至可以直接從其他人那里下載一個已經(jīng)做好的鏡像來直接使用。鏡像是一種文件結(jié)構(gòu)。Dockerfile中的每條命令都會在文件系統(tǒng)中創(chuàng)建一個新的層次結(jié)構(gòu),文件系統(tǒng)在這些層次上構(gòu)建起來,鏡像就構(gòu)建于這些聯(lián)合的文件系統(tǒng)之上。Docker官方網(wǎng)站專門有一個頁面來存儲所有可用的鏡像,網(wǎng)址是:index.docker.io。
容器( Container):容器是從鏡像創(chuàng)建的運(yùn)行實(shí)例。它可以被啟動、開始、停止、刪除。每個容器都是相互隔離的、保證安全的平臺??梢园讶萜骺醋鍪且粋€簡易版的 Linux 環(huán)境,Docker 利用容器來運(yùn)行應(yīng)用。
倉庫:倉庫是集中存放鏡像文件的場所,倉庫注冊服務(wù)器(Registry)上往往存放著多個倉庫,每個倉庫中又包含了多個鏡像,每個鏡像有不同的標(biāo)簽(tag)。目前,最大的公開倉庫是 Docker Hub,存放了數(shù)量龐大的鏡像供用戶下載。
Docker定義
Docker 是一個開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個可移植的容器中,然后發(fā)布到任何流行的 Linux 機(jī)器上。Docker是一個重新定義了程序開發(fā)測試、交付和部署過程的開放平臺,Docker則可以稱為構(gòu)建一次,到處運(yùn)行,這就是Docker提出的"Build once,Run anywhere"
Docker倉庫用來保存我們的images,當(dāng)我們創(chuàng)建了自己的image之后我們就可以使用push命令將它上傳到公有或者私有倉庫,這樣下次要在另外一臺機(jī)器上使用這個image時(shí)候,只需要從倉庫上pull下來就可以了。注意:Docker不是容器,而是管理容器的引擎!
Docker中文手冊上解釋說:Docker是一個開源的引擎,可以輕松的為任何應(yīng)用創(chuàng)建一個輕量級的、可移植的、自給自足的容器。開發(fā)者在筆記本上編譯測試通過的容器可以批量地在生產(chǎn)環(huán)境中部署,包括VMs(虛擬機(jī))、bare metal、OpenStack 集群和其他的基礎(chǔ)應(yīng)用平臺。
從這里我們可以看出,Docker并非是容器,而是管理容器的引擎。Docker是為應(yīng)用打包、部署的平臺,而非單純的虛擬化技術(shù)。
1.在windows平臺上安裝docker
Windows平臺上的docker的安裝包含docker在Windows平臺上運(yùn)行的所有的依賴包,這里最主要介紹安裝前需要考慮的因素和在Windows平臺上怎么樣下載和安裝docker。如果你已經(jīng)安裝了docker,并且準(zhǔn)備啟動它了。那么你可以跳過此步去學(xué)習(xí)怎么使用命令行操作docker,docker的配置和docker工具的使用。查看版本發(fā)布的注意事項(xiàng)請看https://docs.docker.com/docker-for-windows/release-notes/。
2.下載windows平臺下的docker
如果你已經(jīng)做了下載了windows版本下的docker,那么你可以直接安裝。windows平臺的docker的下載和mac平臺下類似,也有兩種下載方式。
注意:
windows下的docker要求windows的系統(tǒng)是win10的企業(yè)版、教育版和微軟虛擬化技術(shù)版本的。請您仔細(xì)看看你在安裝需要了解的所有先決條件清單。雖然你可以選擇安裝stable通道或者edge通道中的docker,但是在同一個時(shí)間段你不能同時(shí)安裝兩個通道中的docker,在你安裝另一個版本的docker和卸載這個版本的docker前,你需要保存保存鏡像和導(dǎo)出容器。
3、在windows下安裝docker前你需要知道的前提條件
3.1、在windows下運(yùn)行docker要求的前提條件是微軟的虛擬化技術(shù),在微軟的虛擬化技術(shù)使用的情況下,如果虛擬盒子不能正常工作,但是會有一些虛擬盒子的vm鏡像會被保留,通過虛擬盒子創(chuàng)建的docker-machine將不再啟動。windows下的docker的這些VMs不能并行。即使這樣,你也可以使用docker-machine來管理這些路由VMs。
3.2、目前,docker只能運(yùn)行企業(yè)版和教育版的win10上面,將來會支持更多版本的win10。
3.3、windows平臺下的docker創(chuàng)建的容器和鏡像和windows主機(jī)之間共享所有用戶賬戶。這是因?yàn)閣indows下的用戶會使用同一個VM來創(chuàng)建和運(yùn)行容器。未來windows將會支持隔離用戶內(nèi)容。
3.4、虛擬化得包必須能夠支持docker在windows下運(yùn)行,在windows下安裝docker能夠使它變得可用,如果你的系統(tǒng)不能夠滿足這些要求,你需要安裝docker box,這樣你就可以使用甲骨文的虛擬盒子來代替微軟的虛擬化技術(shù),也就說,即使你的操作系統(tǒng)的windows其他版本的,你也可通過使用甲骨文的虛擬盒子裝docker,并且使docker變得可用。
3.5、虛擬化技術(shù)必須被激活,一般情況下,虛擬化默認(rèn)是被激活的。更詳細(xì)的內(nèi)容請看虛擬化激活排錯。
3.6、嵌入虛擬腳本,在VMware中運(yùn)行一個windows平臺下的docker或者一個平行實(shí)例,也許能正常工作,但是沒有保證。
3.7、windows下安裝docker包含哪些東西:安裝提供的docker Engine、docker客戶的、docker compose項(xiàng)目和Docker Machine.
4、在windows下安裝Docker
4.1.雙擊InstallDocker.msi運(yùn)行安裝
4.2.接下來安裝向?qū)С绦蚪邮苤噶?,接受安裝、接下來繼續(xù)安裝
4.3.設(shè)置launch docker然后完成安裝
5.在windows下啟動docker
當(dāng)你安裝完成后,docker會自動啟動,藍(lán)鯨狀態(tài)條表面docker正在運(yùn)行,而且你可以經(jīng)過終端進(jìn)入docker。如果你已經(jīng)安裝了運(yùn)用程序,將會彈出一個成功的進(jìn)度條然后建議你進(jìn)行下一步,并且會連接到下面這個文檔。當(dāng)我們初始化完成之后,選擇“about docker”點(diǎn)擊進(jìn)去可以看到docker的版本。到此為止,恭喜您,你已經(jīng)完成在windows啟動和運(yùn)行docker。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Docker?ZooKeeper3.4.10集群安裝配置過程
這篇文章主要介紹了ZooKeeper3.4.10集群安裝配置-Docker,集群部署配置步驟,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07docker配置node項(xiàng)目的實(shí)現(xiàn)步驟
本文主要介紹了docker配置node項(xiàng)目的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-01-01Prometheus 整合 AlertManager的教程詳解
Alertmanager 主要用于接收 Prometheus 發(fā)送的告警信息,它很容易做到告警信息的去重,降噪,分組,策略路由,是一款前衛(wèi)的告警通知系統(tǒng)。這篇文章主要介紹了Prometheus 整合 AlertManager的教程 ,需要的朋友可以參考下2019-07-07使用DockerFile構(gòu)建docker鏡像掛載目錄,數(shù)據(jù)卷同步問題
這篇文章主要介紹了使用DockerFile構(gòu)建docker鏡像掛載目錄,數(shù)據(jù)卷同步問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07