k8s和 docker的區(qū)別是: docker是一種開放源碼應(yīng)用容器引擎缤灵,開發(fā)人員可以將其應(yīng)用打包晌杰,發(fā)布到流行的 liunx系統(tǒng)或?qū)崿F(xiàn)虛擬化翼悴。
1.k8s是一種開放源碼的容器集群管理系統(tǒng)刁赦,可實現(xiàn)自動化部署全度、擴展容量煮剧、維護(hù)等容器集群功能。Docker容器有別于傳統(tǒng)虛擬化方法将鸵,傳統(tǒng)的虛擬技術(shù)勉盅,在將物理硬件虛擬為多套硬件之后,需要在每套硬件上分別部署一個操作系統(tǒng)顶掉,然后在這些操作系統(tǒng)上運行相應(yīng)的應(yīng)用程序菇篡。docker-compose up- d是一個容器。dockerfilebuild是一個鏡像一喘。dockerfile是自己定義自己的鏡像功能驱还。
2.傳統(tǒng)的方法是直接在同一個物理機器節(jié)點上部署所有應(yīng)用,因此凸克,每個 App的依賴性是完全相同的议蟆,不能實現(xiàn) App之間的隔離,當(dāng)然萎战,為了隔離咐容,我們也可以通過創(chuàng)建虛擬機的方式將 App部署到其中,但是這樣做過于繁瑣蚂维,因此 Docker技術(shù)要比虛擬機更輕戳粒,現(xiàn)在我們通過部署 Container容器的技術(shù)來部署應(yīng)用程序,讓所有 Container運行在容器引擎上虫啥。容器集群管理系統(tǒng)以 kubernetes為代表蔚约,使用 kubernetes來管理 Docker集群,也就是說涂籽, Docker可以被看作是 Kubernetes內(nèi)部使用的低級組件苹祟。此外, kubernetes不僅支持 Docker评雌,也支持 Rocket树枫,這是另一種容器技術(shù)。
3.而且 Docker容器中的應(yīng)用程序進(jìn)程直接運行在宿主機(真實的物理機)的內(nèi)核上景东, Docker引擎將一些各自獨立的應(yīng)用程序打包砂轻,它們各自獨立地獨立地運行于未虛擬化的宿主硬件上,同時每個容器都沒有自己的內(nèi)核斤吐,顯然比傳統(tǒng)虛擬機更輕搔涝。