Docket 容器引擎
Docker 是世界領先的軟體容器平臺。是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的映象中,
然後釋出到任何流行的Linux或Windows機器上,可以實現虛擬化(軟體層面),並沒有虛擬化“物理機“,
也不需要安裝新系統,共用”宿主機“的作業系統,提供功能的同時提高效能。容器是完全使用沙箱機制,相互沒有介面。
容器是一個應用層抽象,將程式碼和依賴資源打包在一起,多個容器可以在一臺機器上執行,共享作業系統核心,但是各自作為獨立的程序在執行,
和虛擬機器相比,佔用空間較少,瞬間就能完成啟動。
Compose
當用到模擬或者演示專案的時候 會用到Compose 這個東西,它是負責實現對Docker容器叢集的 快速編排
1 創建出需要的準備工作,比如專案的某個庫,框架編寫的原始碼,寫配置檔案 約定好 埠,路由 之類的
2 定義組成應用的服務,以便他們可以在隔離的環境中一起執行,連通各服務
3 執行和撰寫啟動並執行整個應用
主要使用在搭建和配置開發環境上
可能上面的話比較抽象,但也不是不好理解,在我看來用大白話解釋 就是:
一個虛擬化的電腦,但是寄生在 真實電腦上的一個 電腦,某種方面比虛擬機器更強大
Docker一共分為三部分 1倉庫 2映象 3容器.
1 倉庫 :見名知意,它就好比是 儲存 各種 app 的地方,從這裡下載映象
2 映象 : 因為根據Dockers的特性,延申出一個名詞,好比是程式的 安裝包
3 容器 : 有了映象就可以建立容器,並且在建立的時候設定許可權,就像一個執行的 app ,一個映象可以建立多個容器,之間是隔離的,在主從這點就很好的詮釋了
優點 :速度更快 、更加輕量化,節省資源,彈性延伸,快速擴充套件,遷移方便,持續交付,部署,組建微服務架構
一致的執行環境:Docker 的映象提供了除核心外完整的執行時環境,確保了應用執行環境一致性,從而不會再出現“這段程式碼在我機器上沒問題啊”這類問題。
更快速的啟動時間:可以做到秒級、甚至毫秒級的啟動時間。大大的節約了開發、測試、部署的時間。
彈性伸縮,快速擴充套件:善於處理集中爆發的伺服器使用壓力。
遷移方便:可以很輕易的將在一個平臺上執行的應用,遷移到另一個平臺上,而不用擔心執行環境的變化導致應用無法正常執行的情況。
持續交付和部署:使用 Docker 可以通過定製應用映象來實現持續整合、持續交付、部署。
組建微服務架構:通過多個容器,一臺機器可以跑多個服務,因此在本機就可以模擬出微服務架構。
命令:
docker images 檢視已下載的映象
docker rmi 映象名稱:標籤名 刪除已下載的映象
docker search 映象 從官方倉庫(hub.docker.com)查詢映象
docker pull 映象名稱:標籤名 標籤名預設是 latest,代表最新版本。
docker run 建立容器
docker ps 列出執行中的容器(執行中)
docker ps -a 列出所有的容器(執行、未執行)
docker rm 容器名稱 刪除停止的容器
docker rm -f 容器名稱 刪除執行中的容器
docker start 容器名稱 啟動容器
docker stop 容器名稱 停止容器
docker restart 容器名稱 重啟容器
docker exec 執行容器中的指令
儘量不要使用docker commit
製作映象。
tips :
docker的四種網路模式 :https://www.cnblogs.com/gispathfinder/p/5871043.html