容器云服務(wù)架構(gòu)與運(yùn)維 課件 01 初識(shí)Docker容器_第1頁(yè)
容器云服務(wù)架構(gòu)與運(yùn)維 課件 01 初識(shí)Docker容器_第2頁(yè)
容器云服務(wù)架構(gòu)與運(yùn)維 課件 01 初識(shí)Docker容器_第3頁(yè)
容器云服務(wù)架構(gòu)與運(yùn)維 課件 01 初識(shí)Docker容器_第4頁(yè)
容器云服務(wù)架構(gòu)與運(yùn)維 課件 01 初識(shí)Docker容器_第5頁(yè)
已閱讀5頁(yè),還剩38頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

容器云服務(wù)架構(gòu)與運(yùn)維單元1初識(shí)Docker容器學(xué)習(xí)目標(biāo)了解什么是Docker容器技術(shù),Docker技術(shù)的起源與發(fā)展,了解Docker容器技術(shù)與虛擬機(jī)VM的區(qū)別和優(yōu)勢(shì),了解Docker容器技術(shù)的幾個(gè)重要概念,能夠安裝Docker容器服務(wù)與使用基本命令,能夠本地上載Docker鏡像與拉取公有鏡像,能夠使用不同參數(shù)和不同容器鏡像啟動(dòng)容器。1.1認(rèn)識(shí)

Docker1.2Docker

的安裝與使用1.1認(rèn)識(shí)Docker容器是一種輕量級(jí)、可移植、自包含的軟件打包技術(shù),使應(yīng)用程序可以在幾乎任何地方以相同的方式運(yùn)行。開發(fā)人員在自己的電腦上創(chuàng)建并測(cè)試好的容器,無(wú)需任何修改就能夠在生產(chǎn)系統(tǒng)的虛擬機(jī)、物理服務(wù)器及公有云上運(yùn)行。容器就是將軟件打包成標(biāo)準(zhǔn)化單元,以用于開發(fā)、交付和部署。容器賦予了軟件獨(dú)立性,使其免受外在環(huán)境差異的影響,有助于減少團(tuán)隊(duì)間在相同基礎(chǔ)設(shè)施上運(yùn)行不同軟件時(shí)的沖突。1.1.1什么是Docker容器介紹容器使軟件具備了超強(qiáng)的可移植能力1.1.1什么是Docker容器介紹BuildOnce,RunAnywhere1.1.1什么是Docker容器介紹Docker最初是dotCloud公司的內(nèi)部項(xiàng)目,誕生于2013年初,由google公司開源的Go語(yǔ)言開發(fā)。1.1.1什么是DockerDocker技術(shù)Docker基于容器技術(shù)的輕量級(jí)虛擬化解決方案。Docker是容器引擎,把Linux的Cgroups、namespace等容器底層技術(shù)進(jìn)行封裝抽象,為用戶提供了創(chuàng)建和管理容器的便捷界面(包括命令行和API)。1.1.1什么是DockerDocker技術(shù)1.1.1什么是DockerDocker與虛擬機(jī)的對(duì)比1.更高效地利用系統(tǒng)資源2.更短的啟動(dòng)時(shí)間3.一致的運(yùn)行環(huán)境4.持續(xù)交付和部署5.更輕松地遷移6.更輕松地維護(hù)和擴(kuò)展1.1.2為什么要使用DockerDocker的優(yōu)勢(shì)特性技術(shù)容器虛擬機(jī)啟動(dòng)速度秒級(jí)分鐘級(jí)性能接近原生較弱內(nèi)存代價(jià)很小較多占用磁盤空間一般為MB一般為GB運(yùn)行密度單機(jī)支持上千個(gè)容器一般支持幾十個(gè)容器隔離性安全隔離完全隔離遷移性優(yōu)秀一般Docker與虛擬機(jī)的對(duì)比1.1.2為什么要使用DockerDockerDaemon可以守護(hù)進(jìn)程在宿主機(jī)后臺(tái)運(yùn)行,用戶并不直接與其進(jìn)行交互,而是通過(guò)DockerClient間接和其通信。DockerClient以系統(tǒng)命令的形式存在,用戶使用Docker命令來(lái)與DockerDaemon交互。DockerDaemon接收用戶指令并與Docker共同守護(hù)進(jìn)程通信。1.1.3Docker容器的幾個(gè)概念Docker架構(gòu)①

鏡像(Image):一個(gè)特殊的文件操作系統(tǒng),除了提供容器運(yùn)行時(shí)所需的程序、庫(kù)、資源、配置等文件外,還包含了一些為運(yùn)行時(shí)準(zhǔn)備的配置參數(shù)(如匿名卷、環(huán)境變量、用戶等),鏡像不包含任何動(dòng)態(tài)數(shù)據(jù),其內(nèi)容在構(gòu)建之后也不會(huì)被改變。②容器(Container):它是用來(lái)運(yùn)行鏡像的。例如,拉取了一個(gè)MySQL鏡像之后,只有通過(guò)創(chuàng)建并啟動(dòng)MySQL容器才能正常地運(yùn)行MySQL。容器可以進(jìn)行創(chuàng)建、啟動(dòng)、停止、刪除、暫停等操作。③倉(cāng)庫(kù)(Registry):用來(lái)存放鏡像文件的地方,可以把自己制作的鏡像上傳到倉(cāng)庫(kù)中,Docker官方維護(hù)了一個(gè)公共倉(cāng)庫(kù)DockerHub。1.1.3Docker容器的幾個(gè)概念Docker核心概念①鏡像是分層(Layer)的,即一個(gè)鏡像可以由多個(gè)中間層組成,多個(gè)鏡像可以共享同一個(gè)中間層,也可以通過(guò)在鏡像中多添加一層來(lái)生成一個(gè)新的鏡像。②鏡像是只讀的(Read-only),鏡像在構(gòu)建完成之后,便不可以再修改,而上面所說(shuō)的添加一層構(gòu)建新的鏡像,這實(shí)際上是通過(guò)創(chuàng)建一個(gè)臨時(shí)的容器,在這個(gè)容器上增加或刪除文件,從而形成新的鏡像,因?yàn)槿萜魇强梢詣?dòng)態(tài)改變的1.1.3Docker容器的幾個(gè)概念Docker鏡像①容器是通過(guò)鏡像來(lái)創(chuàng)建的,②鏡像本身是只讀的,而容器會(huì)在啟動(dòng)鏡像時(shí),在鏡像的最上層創(chuàng)建一個(gè)可寫層,執(zhí)行一些必要的寫入操作,③容器可以啟動(dòng)、開始、停止、刪除,并且這些容器都是彼此相互隔離、互不可見的。1.1.3Docker容器的幾個(gè)概念Docker容器根據(jù)所存儲(chǔ)的鏡像是否公開,可以把倉(cāng)庫(kù)分為公開倉(cāng)庫(kù)(Public)和私有倉(cāng)庫(kù)(Private)兩種形式。1.1.3Docker容器的幾個(gè)概念Docker倉(cāng)庫(kù)公開服務(wù)倉(cāng)庫(kù):官方DockerHub、Google的GoogleContainerRegistry加速器:阿里云加速器、DaoCloud加速器、靈雀云加速器私有服務(wù)倉(cāng)庫(kù):DockerRegistry鏡像、DockerTrustedRegistry、DockerHarbor1.2Docker的安裝與使用Docker節(jié)點(diǎn)的規(guī)劃1.2Docker的安裝與使用環(huán)境準(zhǔn)備基礎(chǔ)準(zhǔn)備1.2Docker的安裝與使用環(huán)境準(zhǔn)備使用VMwareWorkstation工具和CentOS7.5鏡像,創(chuàng)建云主機(jī)

云主機(jī)配置自定義,推薦配置2vCPU、4GB內(nèi)存、40GB硬盤,網(wǎng)絡(luò)使用NAT模式,IP設(shè)置為192.168.200.10,1.2Docker的安裝與使用安裝Docker服務(wù)關(guān)閉防火墻關(guān)閉SELinuxsystemctlstopfirewalldsystemctldisablefirewalld#setenforce0#getenforce#vi/etc/selinux/configSELINUX=permissive1.2Docker的安裝與使用安裝Docker服務(wù)[root@docker]#yuminstall-yyum-utilsdevice-mapper-persistent-datalvm2安裝依賴包1.2Docker的安裝與使用安裝Docker服務(wù)[root@docker]#yum-config-manager--add-repo/linux/centos/docker-ce.repo#ll/etc/yum.repos.d/total36-rw-r--r--.1rootroot1664Apr292018CentOS-Base.repo-rw-r--r--.1rootroot1309Apr292018CentOS-CR.repo-rw-r--r--.1rootroot649Apr292018CentOS-Debuginfo.repo-rw-r--r--.1rootroot314Apr292018CentOS-fasttrack.repo-rw-r--r--.1rootroot630Apr292018CentOS-Media.repo-rw-r--r--.1rootroot1331Apr292018CentOS-Sources.repo-rw-r--r--.1rootroot4768Apr292018CentOS-Vault.repo-rw-r--r--.1rootroot2424Oct1905:57docker-ce.repo配置yum源地址1.2Docker的安裝與使用安裝Docker服務(wù)安裝docker服務(wù)啟動(dòng)服務(wù)#systemctlstartdocker#systemctlenabledocker#yuminstalldocker-ce-y1.2Docker的安裝與使用安裝Docker服務(wù)檢查docker安裝[root@docker~]#dockerinfoClient:DebugMode:falseServer:Containers:0Running:0Paused:0Stopped:0Images:0ServerVersion:19.03.13......1.2Docker的安裝與使用Docker基本命令鏡像基礎(chǔ)命令獲取docker子命令幫助信息#dockerimage

--help1.2Docker的安裝與使用Docker基本命令獲取鏡像拉取鏡像可以使用dockerimagepull命令,其格式如下:dockerimagepull[OPTIONS]NAME[:TAG|@DIGEST]當(dāng)然,dockerimagepull有更簡(jiǎn)潔的用法,例如:dockerpull[OPTIONS]NAME[:TAG|@DIGEST]eg:[root@master~]#dockerpullcentos1.2Docker的安裝與使用Docker基本命令-鏡像查看鏡像[root@master~]#dockerimagelsREPOSITORYTAGIMAGEIDCREATEDSIZEcentoslatest300e315adb2f7weeksago209MB或者[root@master~]#dockerimages1.2Docker的安裝與使用Docker基本命令-鏡像虛懸鏡像[root@master~]#dockerimagesREPOSITORYTAGIMAGEIDCREATEDSIZEcentoslatest300e315adb2f7weeksago209MB<none><none>6858809bf6694monthsago1.23MB1.2Docker的安裝與使用Docker基本命令-鏡像刪除虛懸鏡像[root@master~]#dockerimagepruneWARNING!Thiswillremovealldanglingimages.Areyousureyouwanttocontinue?[y/N]yDeletedImages:deleted:sha256:6858809bf669cc5da7cb6af83d0fae838284d12e1be0182f92f6bd96559873e3deleted:sha256:be8b8b42328a15af9dd6af4cba85821aad30adde28d249d1ea03c74690530d1c1.2Docker的安裝與使用Docker基本命令-鏡像鏡像導(dǎo)出導(dǎo)出鏡像為tar包dockersave-o/opt/nginx.tarnginx:latest或dockersave>nginx.tar605c77e624dddockersave-o壓縮包倉(cāng)庫(kù)名:標(biāo)簽dockersave>壓縮包

鏡像ID1.2Docker的安裝與使用Docker基本命令-鏡像鏡像導(dǎo)入dockerload<包名dockerload-i包名[root@docker~]##dockerload<nginx.tar2edcec3590a4:Loadinglayer83.86MB/83.86MBe379e8aedd4d:Loadinglayer62MB/62MB。。。LoadedimageID:sha256:605c77e624ddb75e6110f997c58876baa13f8754486b461117934b24a9dc3a851.2Docker的安裝與使用Docker基本命令-鏡像打標(biāo)簽[root@docker~]#dockertag605c77e624ddnginx:latest[root@docker~]#dockerimagesREPOSITORYTAGIMAGEIDCREATEDSIZEnginxlatest605c77e624dd13monthsago141MBdockertag鏡像ID倉(cāng)庫(kù)名:標(biāo)簽1.2Docker的安裝與使用Docker基本命令-鏡像要?jiǎng)h除一個(gè)或多個(gè)本地的鏡像時(shí),可以使用下面的命令:dockerimagerm[option]IMAGE1,IMAGE2,...IMAGEn也可以使用更簡(jiǎn)潔的方式,如:dockerrmi[option]IMAGE1,IMAGE2,...IMAGEn1.2Docker的安裝與使用Docker基本命令-容器dockerrun[OPTIONS]IMAGE[COMMAND][ARG...]-t讓Docker分配一個(gè)偽終端并綁定到容器的標(biāo)準(zhǔn)輸入上-i讓容器的標(biāo)準(zhǔn)輸入保持打開。-d后臺(tái)運(yùn)行-p(-P)映射容器端口到主機(jī)--name="xxx"為容器指定一個(gè)名稱1.2Docker的安裝與使用Docker基本命令-容器#dockerrun-itubuntu:latest/bin/bash#/bin/bash表示運(yùn)行容器后要執(zhí)行的命令;1.2Docker的安裝與使用Docker基本命令-容器容器啟動(dòng)命令dockerstart啟動(dòng)一個(gè)關(guān)閉狀態(tài)的容器dockerstop終止運(yùn)行態(tài)的容器dockerrestart終止運(yùn)行態(tài)的容器再重新啟動(dòng)它1.2Docker的安裝與使用Docker基本命令-容器容器3種運(yùn)行模式Docker容器大體上有3種運(yùn)行模式,具體如下。①運(yùn)行后退出。使用如下命令創(chuàng)建的容器,在運(yùn)行后會(huì)退出:[root@master~]#dockerruncentosecho"hellowrold"hellowrold②守護(hù)進(jìn)程模式。如果容器中運(yùn)行一個(gè)守護(hù)進(jìn)程,則容器會(huì)一直處于運(yùn)行狀態(tài),具體命令如下:[root@master~]#dockerrun-d-p82:80nginxa3339b25e46036ca8b930572d0083250985930781cf4f90b96f804deba0296c3③交互式。用戶也可以在運(yùn)行容器時(shí),直接與容器進(jìn)行交互,具體命令如下:[root@master~]#dockerrun-itcentos/bin/bash[root@7dfe3a1ca51f/]#可以使用exit命令退出或者按Ctrl+D鍵退出交互界面1.2Doc

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論