docker學習筆記
一:docker理解
docker的通俗化定義:docker相當於一個容器,你可以把任何程序放到docker中。
它是一個軟件容器化平臺。
二:docker思想
集裝箱:如果只是單純地把項目拷貝到別處,極大幾率會運行失敗,因為新的運行環境可能不滿足軟件所需的各種配置、運行環境。而docker則不僅僅是把程序單純地拷貝,而是把程序放進“集裝箱”,這個“集裝箱”就是這個程序的整個運行環境,把整個集裝箱拷貝,從而包裝程序拷貝到哪裏都能正常運行。
標準化:運輸方式標準化——程序先同一運送到超級碼頭,然後再發送到請求該軟件的地方。API標準化——使用同一的api控制應用。
隔離:docker化的程序互不影響。
三:docker的應用場景
1:docker解決了運行環境不一致導致同一個程序在不同環境運行失敗的問題——把軟件以及軟件所需的運行環境一並打包;
2:docker解決了同一臺服務器上不同應用之間由於硬件資源產生的互相影響問題——在同一臺服務器上運行的docker程序事先分配好了一定的硬件資源(cpu、內存等),各自屬於一個隔離的小環境,一個docker程序的運行崩潰不會影響到其他程序。
3:docker讓服務器規模彈性伸縮、擴展簡單成為可能——在高並發熱點時間段需要進行服務器規模擴展時,使用docker的標準化操作,可以快速在新的服務器上搭建好統一的運行環境,讓服務器集群規模快速擴展成為可能。
四:docker基本概念
1:鏡像(集裝箱):
2:倉庫(超級碼頭):
3:容器(運行程序的地方):
用docker運行一個程序的過程,就是去倉庫把鏡像拉到本地,然後用一條命令把鏡像運行起來,變成容器。
主要有以下步驟:
build:構建鏡像。
ship:運輸鏡像。
run:運行鏡像。
docker學習筆記