![容器化技術(shù)與容器服務(wù)(CaaS)_第1頁](http://file4.renrendoc.com/view/09961edb99d068689e9ec5d5e902e0c6/09961edb99d068689e9ec5d5e902e0c61.gif)
![容器化技術(shù)與容器服務(wù)(CaaS)_第2頁](http://file4.renrendoc.com/view/09961edb99d068689e9ec5d5e902e0c6/09961edb99d068689e9ec5d5e902e0c62.gif)
![容器化技術(shù)與容器服務(wù)(CaaS)_第3頁](http://file4.renrendoc.com/view/09961edb99d068689e9ec5d5e902e0c6/09961edb99d068689e9ec5d5e902e0c63.gif)
![容器化技術(shù)與容器服務(wù)(CaaS)_第4頁](http://file4.renrendoc.com/view/09961edb99d068689e9ec5d5e902e0c6/09961edb99d068689e9ec5d5e902e0c64.gif)
![容器化技術(shù)與容器服務(wù)(CaaS)_第5頁](http://file4.renrendoc.com/view/09961edb99d068689e9ec5d5e902e0c6/09961edb99d068689e9ec5d5e902e0c65.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
ContainerizationTechnique&CaaS數(shù)據(jù)科學(xué)與計算學(xué)院潘茂林panml@?容器化技術(shù)?Docker核心概念?引擎與容器基本操作–Docker命令–鏡像、容器與文件卷的使用與管理?容器進(jìn)階–存儲、網(wǎng)絡(luò)、倉庫、監(jiān)控與日志、管理工具–基于容器的CI/CD流程?Go語言應(yīng)用容器化?DockerEngineAPI與開發(fā)?多道程序與多用戶–分時操作系統(tǒng),把一臺大型機變成每個用戶擁有“虛擬機器”?模擬器(Emulator),仿真器–用模擬器實現(xiàn)跨系統(tǒng)交叉開發(fā)?沙箱(SandBox)–受控的、安全的程序執(zhí)行環(huán)境。如微信小程序運行在微信的沙箱需要特定的編譯和解釋程序?虛擬機(VirtualMachine)–通過軟件模擬的具有完整硬件系統(tǒng)功能的、運行在一個完全隔離算機系統(tǒng)?容器(Container)–Linux容器(LinuxContainers,縮寫為LXC)–Unix系統(tǒng)為了實現(xiàn)多用戶的隔離,建立了豐富的OS級別虛擬化機制?Docker引擎隔離技術(shù)(進(jìn)程級別隔離技術(shù))etheisolatedworkspacecalledthecontainer.–namespacenetnamespaceNETNetworking).ipcnamespace:管理IPC資源訪問(IPC:InterProcessCommunication).–ControlGroups:限定容器內(nèi)存等資源–UnionFS聯(lián)合文件系統(tǒng)–Containerformat容器文件格式(OCF)TheuseofLinuxcontainerstodeployapplicationsiscalledtainerizationyml?容器標(biāo)準(zhǔn)與發(fā)展–LXC(/)u–runC(https://runc.io/)?中文介紹:/cn/articles/docker-standard-container-execution-engine-runc–開源容器(容器與引擎分離)?…(PaaS)(IaaS)?容器化為什么會流行(服務(wù)的最佳載體)使是最復(fù)雜的應(yīng)用也可以容器化。–輕量:容器是進(jìn)程,能利用并共享主機操作系統(tǒng)內(nèi)核。:可以即時部署更新和升級容器??梢栽诒镜貥?gòu)建,部署到云并在任何地方運行。自動分發(fā)容器副本。–組合:您可以自由地組合(stack)服務(wù)。Fastconsistentdeliveryofyourapplications–Responsivedeploymentandscaling–Runningmoreworkloadsonthesamehardware?鏡像(image)–類比執(zhí)行程序erythingneededtorunanapplicationthecodearuntimelibrariesenvironmentvariablesandconfigurationfiles.?容器(Container)–類比進(jìn)程imeinstanceofanimagewhattheimagebecomesinmemorywhendthatisanimagewithstateorauserprocess?倉庫(Registry)–類比repository?主機(Host/Node)?服務(wù)(Service),運行在一個容器集群中提供同?棧(Stack)/命名空間(Namaspace)/應(yīng)用(Application)賴的服務(wù),構(gòu)成的一個應(yīng)用?Docker版本–社區(qū)版–企業(yè)版?與Kubernetes集成(在Linux版本號很重要呢!)–社區(qū)版17.03.2ce?CentOS(虛擬機)安裝docker–官方指南?/install/linux/docker-ce/centos/#install-docker-ce?/freefei/p/9263998.html?如果你不是root用戶–請將用戶加入docker用戶組rsionceAPIversion27Goversiongo.7.5itfeceBuilt:TueJun2702:21:362017rsionceIversionminimumversionGoversiongo.7.5itfeceBuilt:TueJun2702:21:362017?運行鏡像helloworldhelloworldlatestlocallyibraryhelloworldbedPullcompleteDigestshaaddaceecbadbfeaacf96e799f81cabc9fde470971e499788newerimageforhelloworldlatesteshowsthatyourinstallationappearstobeworkingcorrectlypsedtheDockerdaemonthehelloworldimagefromtheDockerHuberfromthatimagewhichrunstheexecutablethatproducestheoutputyouarecurrentlyreading.emonstreamedthatoutputtotheDockerclientwhichsentittoyourterminal.ousyoucanrunanUbuntucontainerwithubash?運行鏡像itubuntubashubuntulatestlocallyuntumpleteletefaaPullcompletefabef:PullcompleteDigestshadecefafedfacedb89744ecc9b4f50c7fa671f23c49forubuntulatestroote555f:/#lsmntprocrunsrvtmpvarbinsysusrts?獲得幫助–基本選項–常用命令?例如:dockerps等價于dockercontainerls、容器、網(wǎng)絡(luò)、存儲的管理!sDIMAGECOMMAND??顯示所有容器(包含已中止)~]#dockerps-aANDSTATUSNAMESubashExitedfrostygoodallanklinestartfrostygoodallerpsttachfrostygoodallkerpullmysqlymysqla5a6f2f73cd8:Downloading16.97MB/22.49MB–Repository:mysql–Tag:5.7–ImageID:ae6b78bedf88?遠(yuǎn)程倉庫qlage?Dockerfile常見指令(按指令出現(xiàn)順序)–FROMbase_image–RUNshell_commands–ENVenv_varsLUMEpathCOPYsourcedestination–EXPOSEportsrencebuilder?構(gòu)建docker鏡像練習(xí)–錄入以下內(nèi)容opb–構(gòu)建鏡像ndingbuildcontexttoDockerdaemonkBsfullybuiltdbcece–運行鏡像?dockerrun-it--rmhello-H?使用MySQL容器–啟動服務(wù)器WORDrootdmysql00cbdb363500c562e7ee552250b6434a33a37301cc24986645d216d6bbcd2f36CONTAINERIDIMAGECOMMANDPORTSNAMEScbdbmysqldockerentrypoint.0.0:3306->3306/tcp,33060/tcpmysql2–啟動MySQL客戶端unitnethostmysqlshmysqlhP06-uroot-proot…Serverversion5.7.24MySQLCommunityServer(GPL)…–mysql客戶端基本操作?/pmlpml/article/details/78602290?使用MySQL容器(掛載卷保存db)libmysqlinerprunefeckervolumelsdffedbbfdfcbcabda7d1742bf6564a3669?每次啟動mysql容器,docker創(chuàng)建一個文件卷掛載在容器內(nèi)/var/lib/mysql位置?這個卷在主機(host)的/var/lib/docker/volumes/目錄下?創(chuàng)建卷并掛載qfvmysqldmysql–注意:這里沒有暴露端口到主機!ysqlmysqlitmysqlbashdeenv…mysqlPurootproot?掛載現(xiàn)有數(shù)據(jù)庫ibmysqlusername?修改容器配置–官網(wǎng)案例nfde–編寫:stack.yml–啟動服務(wù)comptest]#vistack.yml–啟動服務(wù)comptest]#vistack.ymlrsioncesgemysqlinmysqlnativepasswordss?鏡像與分層存儲Kernel礎(chǔ)上的引導(dǎo)層bootfs?支持高效堆疊的驅(qū)動–Overlay2(通用)–Aufs(遺留)–Devicemapper–Btrfs–基礎(chǔ)(base)層?Busybox(基本shell,約3M)?Alpine(帶包管理,約5M)?CoreOS(號稱容器專用OS)?Debian/Ubuntu(追求最新)?CentOS/Fedora(追求穩(wěn)定)–應(yīng)用只讀層–可讀寫的容器層?容器與分層存儲–每個容器擁有自己的讀寫層–共享依賴層(只讀)–copy-on-write策略?容器中應(yīng)用數(shù)據(jù)–容器創(chuàng)建的文件在可寫層?Volumes,docker管理文件?Bindmounts,任意文件?Tmpfs,內(nèi)存卷?容器默認(rèn)使用網(wǎng)絡(luò)?容器支持網(wǎng)絡(luò)與類型t–overlay(跨主機網(wǎng)絡(luò))–Custom(網(wǎng)絡(luò)插件)?管理容器網(wǎng)絡(luò)sNETWORKIDNAMEDRIVERSCOPEae4ac72130bdbridgebridgelocalhosthostlocalbbbnonenulllocal–靈活的構(gòu)建容器之間的通訊網(wǎng)絡(luò)?同一自定義網(wǎng)絡(luò)上的容器,可以通過容器名訪問?Bridge網(wǎng)絡(luò)上容器只能通過IP訪問–遺留的做法?使用link將被訪問容器的域名和環(huán)境變量導(dǎo)入容器–容器與自定義網(wǎng)絡(luò)之間?自由地連接或斷開unnameunetitrmubuntubashetupdate…ptgetinstallnettoolsrootaacaptgetinstalliputils-ping-yginetnetmask255.0.0broadcast…inetnetmask…otaacpingyourhostip…et–容器通過橋(docker0)相連–端口映射使外面訪問容器?創(chuàng)建自定義網(wǎng)絡(luò)dockerrunnameuitpnetmynet--rmubuntu:netbashrunnameunetmynetitrmubuntunetbashdockerinspectunetworkconnectbridgeutworkdisconnectmynetuDocker倉庫(Registry)?容器倉庫在cncf技術(shù)棧中屬于供給層–公共容器倉庫服務(wù)?……–私有容器倉庫工具kerRegistrytypeNexus?搭建私有容器倉庫–請閱讀官方指南–DockerRegistry開源代碼:/docker/distributionDocker倉庫(Registry)?阿里云容器鏡像服務(wù)(免費)實踐–用淘寶或注冊一個賬號–選擇“容器鏡像服務(wù)”?登陸dockerlogin--username=<youraccount>?標(biāo)簽dockertaghello-world/pmlpml/repo:hello-world?上傳dockerpush/pmlpml/repo:hello-world?下載dockerpush/pmlpml/repo:hello-world?標(biāo)簽dockertag/pmlpml/repo:hello-worldhello-world?刪除dockerrmi/pmlpml/repo:hello-world?運行dockerrun--rmhello-world?退出dockerlogout?檢查docker的狀態(tài)?查看容器內(nèi)進(jìn)程ertop?容器詳細(xì)信息?容器的日志?容器日志查看logsfeddfrootfeddf/#lltotal12drwxrxrxrootrootDec:46./drwxrxrxrootrootDec3:46../otrootDecdockerenvdrwxrxrxrootrootDec03:44bin/…ckerlogstailfeddfdrwxrxrxrootrootDec08:42usr/drwxrxrxrootrootDec:42var/–調(diào)試、分析?web圖形化管理工具Portainer?單節(jié)點運行Githubhttps///portainer/portainer–使用編程的手段,使得軟件開發(fā)流程、測試、部署、運維自動化–它是一組工具集合?為什么要DevOps?–在微服務(wù)架構(gòu)下,難以手工保證服務(wù)的測試與部署?在cncf技術(shù)棧中的位置–配置與自動化?Ansible–CI/CDne?Jenkins?TravisCI–自動化測試與部署(CI/CD)流水線–使用Drone定義與管理軟件生產(chǎn)流水線(golang比較合適)超長干貨:基于Docker的DevOpsCI/CD實踐,/a/1190000013098495?Java程序猿的實踐–基本流程與工具鏈htmlstimetrackcnbuildminimalgoimagehtml?基于golang官方鏡像創(chuàng)建HYPERL
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 華師大版數(shù)學(xué)八年級下冊17.1《變量與函數(shù)》(第2課時)聽評課記錄
- 湘教版數(shù)學(xué)八年級上冊2.3《等腰(邊)三角形的性質(zhì)》聽評課記錄2
- 浙教版數(shù)學(xué)七年級上冊5.4《一元一次方程的應(yīng)用》聽評課記錄
- 人教版地理八年級上冊《土地資源》聽課評課記錄
- 人教版九年級數(shù)學(xué)上冊聽評課記錄本《一元二次方程 四種解法》
- 五年級上冊數(shù)學(xué)口算500題
- 青島版八年級上冊數(shù)學(xué)聽評課記錄《5-1定義與命題》
- 企業(yè)煤氣管道工程安裝合同范本
- 高檔小區(qū)豪華裝修房屋買賣合同范本
- 2025年度企業(yè)內(nèi)部停車位使用及管理協(xié)議模板
- 復(fù)旦中華傳統(tǒng)體育課程講義05木蘭拳基本技術(shù)
- GB/T 13234-2018用能單位節(jié)能量計算方法
- (課件)肝性腦病
- 北師大版五年級上冊數(shù)學(xué)教學(xué)課件第5課時 人民幣兌換
- 工程回訪記錄單
- 住房公積金投訴申請書
- 高考物理二輪專題課件:“配速法”解決擺線問題
- 檢驗科生物安全風(fēng)險評估報告
- 京頤得移動門診產(chǎn)品輸液
- 如何做一名合格的帶教老師PPT精選文檔
- ISO9001-14001-2015內(nèi)部審核檢查表
評論
0/150
提交評論