Docker精华问答:Docker与虚拟机的区别?| 技术头条
Docker?是個劃時代的開源項目,它徹底釋放了計算虛擬化的威力,極大提高了應用的維護效率,降低了云計算應用開發(fā)的成本!使用 Docker,可以讓應用的部署、測試和分發(fā)都變得前所未有的高效和輕松!
1
Q:什么是Docker?
A:Docker是一個開源的引擎,可以輕松的為任何應用創(chuàng)建一個輕量級的、可移植的、自給自足的容器。開發(fā)者在筆記本上編譯測試通過的容器可以批量地在生產環(huán)境中部署,包括VMs(虛擬機)、?bare metal、OpenStack 集群和其他的基礎應用平臺。
Docker里的幾個基本概念:
鏡像:鏡像可以理解為一堆靜態(tài)的文件;
容器:容器則是鏡像run起來之后的一個實例。鏡像之于容器就好比面向對象編程里的class之于object;
倉庫:鏡像需要地方保存,這個地方就是倉庫。
Q:Docker通常用于哪些場景?
A:·web應用的自動化打包和發(fā)布;
? ? ? ·自動化測試和持續(xù)集成、發(fā)布;
? ? ? ·在服務型環(huán)境中部署和調整數據庫或其他的后臺應用;
? ? ? ·從頭編譯或者擴展現有的OpenShift或Cloud Foundry平臺來搭建自己的PaaS環(huán)境。
Q:Docker 的優(yōu)點是什么?
A:簡化程序:Docker 讓開發(fā)者可以打包他們的應用以及依賴包到一個可移植的容器中,然后發(fā)布到任何流行的 Linux 機器上,便可以實現虛擬化。Docker改變了虛擬化的方式,使開發(fā)者可以直接將自己的成果放入Docker中進行管理。方便快捷已經是 Docker的最大優(yōu)勢,過去需要用數天乃至數周的 任務,在Docker容器的處理下,只需要數秒就能完成。
避免選擇恐懼癥:如果你有選擇恐懼癥,還是資深患者。Docker 幫你 打包你的糾結!比如 Docker 鏡像;Docker 鏡像中包含了運行環(huán)境和配置,所以 Docker 可以簡化部署多種應用實例工作。比如 Web 應用、后臺應用、數據庫應用、大數據應用比如 Hadoop 集群、消息隊列等等都可以打包成一個鏡像部署。
節(jié)省開支:一方面,云計算時代到來,使開發(fā)者不必為了追求效果而配置高額的硬件,Docker 改變了高性能必然高價格的思維定勢。Docker 與云的結合,讓云空間得到更充分的利用。不僅解決了硬件管理的問題,也改變了虛擬化的方式。
Q:Docker的構架是什么?
A:Docker使用C/S架構,Client 通過接口與Server進程通信實現容器的構建,運行和發(fā)布。client和server可以運行在同一臺集群,也可以通過跨主機實現遠程通信。
Q:Docker與虛擬機的區(qū)別?
A:關于Docker與虛擬機的區(qū)別,網上找到的一張圖,非常直觀形象地展示出來,話不多說,直接上圖。
比較上面兩張圖,我們發(fā)現虛擬機是攜帶操作系統(tǒng),本身很小的應用程序卻因為攜帶了操作系統(tǒng)而變得非常大,很笨重。Docker是不攜帶操作系統(tǒng)的,所以Docker的應用就非常的輕巧。另外在調用宿主機的CPU、磁盤等等這些資源的時候,拿內存舉例,虛擬機是利用Hypervisor去虛擬化內存,整個調用過程是虛擬內存->虛擬物理內存->真正物理內存,但是Docker是利用Docker Engine去調用宿主的的資源,這時候過程是虛擬內存->真正物理內存。
小伙伴們沖鴨,后臺留言區(qū)等著你!
關于Docker,今天你學到了什么?還有哪些不懂的?除此還對哪些話題感興趣?快來留言區(qū)打卡啦!留言方式:打開第XX天,答:……
同時歡迎大家搜集更多問題,投稿給我們!風里雨里留言區(qū)里等你~
福利
1、掃描添加小編微信,備注“姓名+公司職位”,加入【云計算學習交流群】,和志同道合的朋友們共同打卡學習!
推薦閱讀:
OpenStack已死?恐怕你想多了 | 技術頭條
30位90后霸榜! 福布斯: 比你年輕、比你有顏、比你有才華, 就是他們了!
極客頭條
微軟 CTO 韋青:“程序員 35 歲就被淘汰”是個偽概念 | 人物志
他曾主導世界上第一臺安卓智能機, 如今能否靠區(qū)塊鏈手機找回昔日的光榮?|人物志
移動開發(fā)或將被顛覆?
如何將TensorFlow Serving的性能提高超過70%?
喜歡就點擊“在看”吧
總結
以上是生活随笔為你收集整理的Docker精华问答:Docker与虚拟机的区别?| 技术头条的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 加沙地区是怎么回事,以色列为何要占领加沙
- 下一篇: 定向士官哪个学校入伍率高