1.docker介紹
Docker是一個用於構建,執行,傳送 應用程式的平臺。
以下所有環境打包成一個集裝環境
1.1 為什麼要用docker?
第一點:安裝依賴過多
如果不用docker,需要部署一個帶有資料庫的,前後端服務的應用時,就要執行step的步驟安裝環境,網站才能執行該應用
第二點:不同的開發環境
不同的環境需要完全一致的依賴
如果使用docker後:
把所有環境打包成一個個集裝箱,裝入docker,開發環境沒問題,測試環境也是沒問題的。
1.2 docker和虛擬機器的區別
虛擬機器的型別:
虛擬化技術:是可以將一個物理伺服器,虛擬成多個邏輯伺服器,每個邏輯伺服器都有自己的作業系統,cpu,記憶體,硬碟和網路介面等等,它們之間是完全隔離的,可以獨立執行;虛擬機器實現了服務資源的整合,可以將一臺伺服器的計算能力,儲存能力,網路資源分配給多個邏輯伺服器。
虛擬機器的缺點:
每臺虛擬機器都要佔用大量的資源,比如:cpu,記憶體,硬碟,網路等等,而且啟動速度非常慢,可能需要幾分鐘或者十幾分鍾。
docker的層級展示:
docker是容器的實現,是一個容器化的解決方案和平臺。而容器是一種虛擬化技術和虛擬機器類似,也是一個獨立的環境。也可以在容器中執行應用程式,它並不需要在容器中執行一個完整的作業系統,而是使用宿主機的作業系統。所以啟動速度非常快,通常只需要幾秒鐘,同時需要的資源也很少。所以可以在一臺物理伺服器上執行更多的容器,充分利用資源。
2.docker基本原理
docker是使用Client-Server架構模式,docker client和docker daemon之間是使用socket或者restful Api通訊。docker daemon就是伺服器端的守護程序,它負責管理docker的各種資源。
所有的命令都是從client傳送經過daemon,再返回的。
映象:是一個只讀的模板,它可以用來建立容器;
容器:是docker的執行例項,它提供了一個獨立的可移植的環境,可以在這個環境中執行應用程式。
docker倉庫:是用來儲存映象的地方,最流行和最常用的倉庫就是dockerhub。
映象和容器,就像一個類和例項一樣。或者可以這樣理解,映象就像一本食譜,而容器就像根據食譜做出的每一道菜。
3.docker安裝
可以參考網上的一些教程