摘要:虛擬化就是表示計算機資源的一種抽象方式,它是一系列虛擬技術(shù)的集合,如硬件虛擬化技術(shù),處理器虛擬化技術(shù),指令虛擬化技術(shù),軟件虛擬化技術(shù)等。對于計算機領(lǐng)域,虛擬化技術(shù)主要分為兩類,一類是硬件虛擬化,一類是軟件虛擬化,容器技術(shù)屬于軟件虛擬化。
容器技術(shù)并不是什么新概念,只不過最近幾年隨著云計算的火熱,變得被大家所熟知。最早于1979年誕生的chroot技術(shù),容器技術(shù)又稱為容器虛擬化。虛擬化技術(shù)
虛擬化就是通過虛擬化技術(shù)將一臺實體計算機虛擬為多臺邏輯計算機,虛擬后的每一臺邏輯計算機都可以運行不同的操作系統(tǒng),每一個邏輯計算機都是一個虛擬的實體,相互獨立,相互隔離。雖然通過虛擬技術(shù)可以運行虛擬計算機,但是他們并不是在真實的基礎(chǔ)上運行的。
虛擬化就是表示計算機資源的一種抽象方式,它是一系列虛擬技術(shù)的集合,如:硬件虛擬化技術(shù),處理器虛擬化技術(shù),指令虛擬化技術(shù),軟件虛擬化技術(shù)等。
Docker對于計算機領(lǐng)域,虛擬化技術(shù)主要分為兩類,一類是硬件虛擬化,一類是軟件虛擬化,容器技術(shù)屬于軟件虛擬化。
為什么使用容器?
與傳統(tǒng)軟件開發(fā),運維相比,容器技術(shù)可以更高效的構(gòu)建,維護管理應用。舉個例子,傳統(tǒng)軟件開發(fā),應用上線,中間需要好多麻煩的過程,需要安裝各種相關(guān)依賴軟件,然后測試,發(fā)布,本地測的好好,上線好發(fā)現(xiàn)運行不起來,定位環(huán)境問題相當麻煩,相信大家都深有體會。
使用容器技術(shù)后,我們可以把應用依賴的軟件以及資源都放到一個集裝箱里,docker的圖標就是集裝箱。運維只需要一個簡單的命令就可一把它發(fā)布到各個服務器,而且不擔心水土不服,這樣會節(jié)省大量的時間。
Docker基礎(chǔ)docker其實非常簡單,你用到的命令也不過十幾條。
Docker是一個構(gòu)建,發(fā)布,運行分布式應用的平臺,Docker平臺整體可以看成是由Docker引擎,Docker Registry兩部分組成。Docker引擎的底層是各種操作系統(tǒng)以及云計算基礎(chǔ)設(shè)施,而上層則是各種應用程序和管理工具,每層之間都通過API來通信的。
Docker Client
Docker引擎可以簡單的理為Docker服務端程序,他讓你可以運行基于docker構(gòu)建的應用,它是一個cs架構(gòu)的軟件。當你運行docker version時,就會看到兩大部分,client和server。通過client的指令通過API,我們可以直接和后臺守護進程的server通信交互。
Docker Daemon
daemon就是一個守護進程,它是整個docker的核心引擎,在0.9版本之前,客戶端和服務端是同意在一個二進制文件中,后來為了根號的管理,劃分為4個二進制文件:docker,containerd,docker-containerd-shim和docker-runc。
分開之后,守護進程與容器管理不再相互牽制,使得docker技術(shù)變得更人性化。
Docker鏡像
docker鏡像是Docker系統(tǒng)中的構(gòu)建模塊,是啟動一個Docker容器的基礎(chǔ)。
Docker鏡像分層構(gòu)建,從底層到上層,我們寫的Dockerfile,就是鏡像構(gòu)建步驟。
Docker容器
容器是docker的核心,根據(jù)鏡像文件描述,docker會創(chuàng)建一個容器,你不用關(guān)心它內(nèi)部有些什么,你只要知道它提供了你的應用程序所需的所有資源,你可以很方便的管理它。從宿主機來看,它只是一個簡單的用戶進程而已。
Docker倉庫
相信大家對github都陌生,它是一個開源代碼托管倉庫,docker倉庫和它的作用一樣,不管他存放的是鏡像。這樣你就可以很方便的把你的鏡像分享給其他人,不過你需要把你的鏡像上傳到docker的公開倉庫去。在你本地也可創(chuàng)建私有倉庫,方便不同服務器的應用發(fā)布。
總結(jié)學習使用docker成本并不高,基本看看操作指令,了解下docker是干嘛的就能上手了,如果你想要了解核心原理,那需要花很多時間。
你的應用程序以前是怎么寫的現(xiàn)在依然怎么寫,只是最后為它寫一個Dockerfile,告訴docker該怎么啟動這個應用,這個應用需要哪些軟件,比如mysql,jdk,tomact,redis,mongodb等,docker會自動幫你安裝這些,并在容器中幫你啟動,這樣你的應用就可以不運行環(huán)境為頭疼了。
在其他服務起安裝,也不需要從前一樣先去手動安裝一些軟件,配置好環(huán)境。直接運行鏡像就好了,所有東西都已經(jīng)放到集裝箱里了,你所要做的只是把它搬運過去就好了。
今天只是個簡單的介紹,下節(jié)課就來安裝使用它。歡迎關(guān)注我的公中號:mike啥都想搞,一起交流學習
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/106098.html
摘要:虛擬化就是表示計算機資源的一種抽象方式,它是一系列虛擬技術(shù)的集合,如硬件虛擬化技術(shù),處理器虛擬化技術(shù),指令虛擬化技術(shù),軟件虛擬化技術(shù)等。對于計算機領(lǐng)域,虛擬化技術(shù)主要分為兩類,一類是硬件虛擬化,一類是軟件虛擬化,容器技術(shù)屬于軟件虛擬化。 容器技術(shù)并不是什么新概念,只不過最近幾年隨著云計算的火熱,變得被大家所熟知。最早于1979年誕生的chroot技術(shù),容器技術(shù)又稱為容器虛擬化。 虛擬化...
摘要:的主要作用是自己根據(jù)基礎(chǔ)鏡像,重新定制鏡像,而不是直接從官方倉庫拿現(xiàn)成的使用。以接下來要構(gòu)建的環(huán)境來說明下,下面我將要搭建一個的開發(fā)環(huán)境,需要進行配合。它的主要作用是持久化數(shù)據(jù),避免容器銷毀后內(nèi)部數(shù)據(jù)丟失暴露到宿主機的端口。 以前一直使用 Vagrant 作為自己的開發(fā)環(huán)境,并且在上家公司也推行大家采用 Vagrant 作為開發(fā)環(huán)境,保障公司使用的是同一套開發(fā)環(huán)境。隨著docker的流...
摘要:的主要作用是自己根據(jù)基礎(chǔ)鏡像,重新定制鏡像,而不是直接從官方倉庫拿現(xiàn)成的使用。以接下來要構(gòu)建的環(huán)境來說明下,下面我將要搭建一個的開發(fā)環(huán)境,需要進行配合。它的主要作用是持久化數(shù)據(jù),避免容器銷毀后內(nèi)部數(shù)據(jù)丟失暴露到宿主機的端口。 以前一直使用 Vagrant 作為自己的開發(fā)環(huán)境,并且在上家公司也推行大家采用 Vagrant 作為開發(fā)環(huán)境,保障公司使用的是同一套開發(fā)環(huán)境。隨著docker的流...
摘要:那容器和鏡像有什么關(guān)系網(wǎng)上說是類和對象的關(guān)系,沒錯,但是這樣的比喻沒什么實際卵用。針對這個問題,項目組決定把開發(fā)環(huán)境遷移到中,在測試環(huán)境中測試無誤后,把鏡像打包發(fā)布到正式環(huán)境中,解決了環(huán)境不同導致的問題。 本文旨在用最通俗的語言講述最枯燥的基本知識 最近Docker突然火得不得了,到處都是談論Docker的聲音,相信大家和小編一樣的心情,看這個東西有點高大上,但嘗試去閱讀Docker文...
閱讀 3317·2021-09-30 09:54
閱讀 3811·2021-09-22 15:01
閱讀 3120·2021-08-27 16:19
閱讀 2584·2019-08-29 18:39
閱讀 2170·2019-08-29 14:09
閱讀 639·2019-08-26 10:23
閱讀 1348·2019-08-23 12:01
閱讀 1880·2019-08-22 13:57