Docker,Docker-Compose,Docker Swarm,Kubernetes之間的區別


來源:https://blog.csdn.net/notsaltedfish/article/details/80959913

 

Docker

Docker 這個東西所扮演的角色,容易理解,它是一個容器引擎,也就是說實際上我們的容器最終是由Docker創建,運行在Docker中,其他相關的容器技術都是以Docker為基礎,它是我們使用其他容器技術的核心

 

Docker-Compose

Docker-Compose 是用來管理你的容器的,有點像一個容器的管家,想象一下當你的Docker中有成百上千的容器需要啟動,如果一個一個的啟動那得多費時間。有了Docker-Compose你只需要編寫一個文件,在這個文件里面聲明好要啟動的容器配置一些參數,執行一下這個文件,Docker就會按照你聲明的配置去把所有的容器啟動起來,但是Docker-Compose只能管理當前主機上的多個Docker容器,也就是說不能去啟動其他主機上的Docker容器。

 

Docker Swarm

Docker Swarm 是一款用來管理多主機上的Docker容器的工具,可以負責幫你啟動容器,監控容器狀態,如果容器的狀態不正常它會幫你重新幫你啟動一個新的容器,來提供服務,同時也提供服務之間負載均衡,而這些東西Docker-Compose 是做不到的

 

Kubernetes

Kubernetes它本身的角色定位是和Docker Swarm 是一樣的,也就是說他們負責的工作在容器領域來說是相同的部分,當然也有自己一些不一樣的特點。這個就像是Eclipse和IDEA一樣,也是一個跨主機的容器管理平台。它是Google公司根據自身的多年的運維經驗研發的一款容器管理平台。而Docker Swarm則是由Docker 公司研發的。

既然這兩個東西是一樣的,那就面臨選擇的問題,應該學習哪一個技術呢?實際上這兩年Kubernetes已經成為了很多大公司的默認使用的容器管理技術,而Docker Swarm已經在這場與Kubernetes競爭中已經逐漸失勢,如今容器管理領域已經開始已經逐漸被Kubernetes一統天下了。所以建議大家學習的時候,應該多考慮一下這門技術在行業里面是不是有很多人在使用。

需要注意的是,雖然Docker Swarm在與Kubernetes的競爭中敗下陣來,但是這個跟Docker這個容器引擎沒有太大關系,它還是整個容器領域技術的基石,Kubernetes離開他什么也不是。

總結

Docker是容器技術的核心、基礎;

Docker Compose是一個基於Docker的單主機容器編排工具;

Docker Swarm和Kubernetes是基於Docker的跨主機的容器管理平台,功能強大。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM