一、docker概述
1、我們寫的程式碼會接觸到好幾個環境:開發環境、測試環境以及生產環境:
2、概念
- Docker 是一個開源的應用容器引擎
- 誕生於 2013 年初,基於 Go 語言實現, dotCloud 公司出品(後改名為Docker Inc)
- Docker 可以讓開發者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,然後釋出到任何流行的 Linux 機器上。
- 容器是完全使用沙箱機制,相互隔離
- 容器效能開銷極低。
- Docker 從 17.03 版本之後分為 CE(Community Edition: 社群版) 和 EE(Enterprise Edition: 企業版)
二、docker安裝
Docker可以執行在MAC、Windows、CentOS、UBUNTU等作業系統上,本課程基於CentOS 7 安裝Docker。官網:https://www.docker.com
三、docker架構
- 映象(Image):Docker 映象(Image),就相當於是一個 root 檔案系統。比如官方映象 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系統的 root 檔案系統。
- 容器(Container):映象(Image)和容器(Container)的關係,就像是物件導向程式設計中的類和物件一樣,映象是靜態的定義,容器是映象執行時的實體。容器可以被建立、啟動、停止、刪除、暫停等。
- 倉庫(Repository):倉庫可看成一個程式碼控制中心,用來儲存映象。
預設情況下,將來從docker hub(https://hub.docker.com/)上下載docker映象,太慢。一般都會配置映象加速器:
- USTC:中科大映象加速器(https://docker.mirrors.ustc.edu.cn)
- 阿里雲
- 網易雲
- 騰訊雲