色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql 列子查詢,docker容器與虛擬機有什么區別

錢淋西2年前32瀏覽0評論
mysql 列子查詢,docker容器與虛擬機有什么區別?

謝邀~

我們單位最近在推docker,已經在開發測試環境使用(稍顯落后),下面我就談談自己的Docker的理解,以及Docker和虛擬機的區別。

虛擬機

先說說什么是虛擬機:在一臺物理機器上,利用虛擬化技術,虛擬出來多個操作系統,每個操作系統之間是隔離的。

說起來有些繞,那么我們看看虛擬機的架構圖,就容易理解了。例如我們要在一臺物理機器運行三個Java項目,彼此之間隔離。

從下往上看,解釋起來其實很簡單:

最下面的一層就是物理機,可以是服務器,設置是一臺個人電腦;

電腦上需要安裝操作系統,比如我們安裝了win10的操作系統;

再往上就是虛擬機軟件了,比如我們常用的VirtualBox、VMWare,它們的作用是模擬計算機硬件;

繼續向上,就是虛擬機模擬出來的操作系統了;

在虛擬的操作系統中,安裝所需的軟件、組件等。比如我們需要在虛擬操作系統中安裝JDK、Tomcat等;

最后就是具體的應用了,例如部署到Tomcat中。

Docker

再說說什么是Docker,找了一句官方的解釋:Docker是開源的應用容器引擎。是不是又一頭霧水?我們還是先看看Docker的架構圖。

依然從下往上看:

最下面兩層,概念同上。

往上,可以看做Docker容器的管理器。

依賴和應用都被打包成了Docker鏡像。例如,JDK、Tomcat、應用都被打包在了一起,運行在Docker容器里,容器和容器間是隔離的。

這里提示:Linux支持Docker,Windows和MacOS的話,不直接支持(win10專業版好像可以直接支持,不過我都是安裝Linux的虛擬機,在上面跑Docker)。

Docker和虛擬機的區別

從兩者的架構圖上看,虛擬機是在硬件級別進行虛擬化,模擬硬件搭建操作系統;而Docker是在操作系統的層面虛擬化,復用操作系統,運行Docker容器。

Docker的速度很快,秒級,而虛擬機的速度通常要按分鐘計算。

Docker所用的資源更少,性能更高。同樣一個物理機器,Docker運行的鏡像數量遠多于虛擬機的數量。

虛擬機實現了操作系統之間的隔離,Docker算是進程之間的隔離,虛擬機隔離級別更高、安全性方面也更強。

虛擬機和Docker各有優勢,不存在誰替代掉誰的問題,很多企業都采用物理機上做虛擬機,虛擬機中跑Docker的方式。

我將持續分享Java開發、架構設計、程序員職業發展等方面的見解,希望能得到你的關注。