大家好,如果您還對docker干嘛用的不太了解,沒有關系,今天就由本站為大家分享docker干嘛用的的知識,包括容器Docker的問題都會給大家分析到,還望可以解決大家的問題,下面我們就開始吧!
在個人電腦(非服務器)上中重度使用docker是什么體驗
我現在就是這樣子,我目前個人使用的是Macbook,MacOS實際上是BSDUnix系統的一個分支,與Linux還有些許的不同,包括常用的編譯工具,Linux實用工具等。而有時候又會需要Linux環境,但我嫌虛擬機啟的太慢了,所以自己搭了docker環境,可以與宿主機互聯,并且利用VSCode的遠程連接和容器功能實現可視化,目前用的很舒服??。只需要簡單幾秒鐘就可以啟一個新的鏡像,同時可以利用dockerimage很容易實現Linux定制等功能。總的來說,個人感覺體驗比Mac上的Virtualbox或者VMFusion好很多。
docker管理器干嘛用的
提供彈性的云服務。因為Docker容器可以隨開隨關,很適合動態擴容和縮容。
docker應該裝在虛機上還是物理主機上性能上有什么差別
虛擬機太重,你都有輕量級的虛擬化(docker)了,還建虛擬機干嘛?增加復雜度嗎?
云計算是干什么的
提到云計算是干什么的問題,感覺我最有發言權。
云計算可以說是互聯網世界最“火”的概念了,但普通人看到它的時候內心是崩潰的,這到底是什么意思,又用在哪里了?
云計算定義
實際上,關于云計算的概念眾說紛紜。目前被主流認可的定義,是這樣說的——
云計算是一種按使用量付費的模式,它提供可用的、便捷的、按需的網絡訪問,進入可配置的計算資源共享池(資源包括網絡,服務器,存儲,應用軟件,服務),這些資源能夠被快速提供,只需投入很少的管理工作,或與服務供應商進行很少的交互。
———————說人話的分割線———————
上面這個定義還是很難懂,所以我來解釋的話,我會這樣表達:假設你想要用水,肯定不會選擇自己去開個水廠,而是打開水龍頭,按自己的用量付錢給自來水廠就夠了。
云計算服務商就像是開在不同地區的各個自來水廠,為全世界的人提供用水(軟件、服務)。
我們可以繼續做延申,當你需要用軟件的時候,你不需要滿世界的線下去找軟件供應商、比價、談判、簽約、安裝等等,只需在網上的軟件應用商店,下載下來,使用時支付少量的費用即可。
是不是覺得云計算很好理解了?那么云計算實際在生活中以什么樣的形式出現呢?
談談剛剛過去的剁手節雙11和雙12吧,全球最極限的流量高峰,全球幾億人同時在線購物。為啥服務器能安全支撐,不會崩潰?——因為我們使用了“云計算”。
傳統IT模式就是固定的機房——你當然不能隨時搬運機器來幫你增加計算能力,但“云”不一樣:它可以隨時調用資源,同時通過分布式計算來分攤服務器的壓力,當雙11結束后,云的特性讓這些完成任務計算能力隨時釋放,幫你節約成本。
雙11期間,我們新增調用的彈性計算能力累計超過1000萬核(=10座大型數據中心),所以你就能理解為什么買買買會這么舒暢。
當然,這也是為了讓大家更好理解做的比喻,實際上云計算的概念要復雜得多。
大家也會經常聽到IaaS、PaaS、SaaS三個詞,這實際上就是云計算常見的三種服務模式,這里簡單地用吃貨們最愛的食物來解釋:
當你想吃一碗餃子的時候,你需要自己買面皮、肉、配料來完成,太麻煩!
你有三個選擇:
1.直接去超市買現成的餃子,供應商就是基礎設施既服務(IaaS)
2.直接叫外賣,讓餐廳做好熱騰騰的餃子送到你家來,平臺既服務(PaaS)
3.直接出門去餐廳吃餃子,那里上面都準備好了,軟件既服務(SaaS)
關于三種常見服務模式,這里不再做贅述,有想知道的小伙伴我們可以專門單獨再開講一篇,歡迎大家有問題隨時評論我哦。
有docker了,為什么還需要nas系統
感謝邀請,Docker和NAS完全是兩個不同的東西,側重點不一樣。Docker又叫容器,實際上是SaaS的技術,提供的是應用服務。
例如現在企業如果需要部署服務,使用Docker是非常快捷的方法,因為Docker不需要你部署邏輯服務器,也不需要起復雜的虛擬機。虛擬機雖然可以隔離出很多“子電腦”,但占用空間更大,啟動慢,而且需要硬件支持
而Docker容器是在操作系統層面上實現的虛擬化,直接利用本地主機的操作系統,因此更輕量。不像虛擬機一樣,需要對整個OS虛擬化,Docker虛擬的是Linux內核之上的應用部分,所以啟動更迅速,可以到秒級。
如果企業需要廣泛部署某個應用,只需要把包含這個應用的鏡像在私有云的服務器上基于容器安裝啟動(你可以理解為我們家庭安裝操作系統時的Ghost),那么這個應用就能很快部署。這比建立虛機再安裝應用快多了,就類似復制黏貼。
所以很多企業使用Docker快速搭建自己的應用,實現秒級的應用搭建和啟動。這是Docker的作用,應用部署。但是Docker應用所需的存儲空間是共享的。
而NAS其實是存儲服務器,NAS(NetworkAttachedStorage:網絡附屬存儲)按字是基于網絡,用于資料存儲功能的服務器,因此也稱為“網絡存儲器”。它的作用是管理數據,做到控制和存儲分離。NAS可用實現通過網絡存取數據,而現在NAS已經從云端走到了家庭,成為家庭的存儲利器之一
NAS里面內置一個用于管理的輕量化Linux系統,但是這個僅僅是管理,有的NAS也可用直接作為Linux服務器部署業務,但是這個能力很弱。所以Docker主要是用于應用的安裝,而NAS主要是運用于保存數據,這是兩個應用方向。
而且正如剛才所說的,NAS的家庭應用已經很普遍了,你就可以認為是一個映射的外掛硬盤,這個應用場景類似于建立一個小型的家庭數據中心,應用場景比容器廣泛的多,容器Docker主要還是基于企業部署應用的。
所以簡單的理解,Docker的作用是企業快捷的基于物理服務器安裝APP提供服務,NAS是提供數據存儲,兩個都需要
docker容器與虛擬機有什么區別
先說Docker干啥用的。因為現在物理服務器是很強大的,我們如果在一臺物理服務器上只跑一個服務就浪費了,而同時跑很多服務他們又互相影響,比如說一個服務出了內存泄漏把整個服務器的內存都占滿了,其他服務都跟著倒霉。所以要把每個服務都隔離起來,讓它們只使用自己那部分有限的cpu,內存和磁盤,以及自己依賴的軟件包。這個早先是用虛擬機來實現隔離的,但是每個虛擬機都要裝自己的操作系統核心,這是對資源有點浪費。于是就有了Docker,一個機器上可以裝十幾個到幾十個docker,他們共享操作系統核心,占用資源少,啟動速度快。但又能提供了資源(cpu,內存,磁盤等)的一定程度的隔離。
然后使用docker給軟件開發又帶來了不少額外的好處。比如說運維省心啊,所有物理服務器的配置幾乎都是一樣的,只是上面跑的dockercontainer不同。以前某個服務訪問量大了,需要多幾臺服務器,你得一臺一臺準備,現在直接docker配好,要幾個就給幾個。
還有依賴關系管理也容易了,每個dockerimage都可以獨立配置自己需要的軟件包,準備一個配置文件就可以發布,不像以前配置個apache+php就在一臺物理主機上從頭編譯到尾,如果想再多個插件,往往是從頭又來一遍,機器多了是受不了的。而且依賴有沖突也沒那么怕了,都隔離了嘛。
現在docker的隔離性已經做的非常好了。我覺得docker有個問題是linux宿主和windows宿主的docker實現差異還挺大的。linux是基于linux核心的namespaces和cgroup等來隔離資源,還有libvirt這樣的接口實現,基本上能當個虛擬機來用,又很輕量級。windows方面主要是靠微軟,微軟做得也還不錯,前后搞了好幾種container方案,前段時候我試過的是基于hyper-v的,功能應該都在了,所以說現在docker在windows主機上也是能用的,這對國內龐大的windows服務器保有量也是個福音。不過在windows上面使用docker開發是沒問題,生產環境我就不確定了。
OK,關于docker干嘛用的和容器Docker的內容到此結束了,希望對大家有所幫助。