docker create 和 docker run是建立容器的兩個命令。docker
docker create用於建立一個處於靜止狀態的容器。shell
docker run = docker create + docker startubuntu
以下圖所示,建立容器後,會馬上返回(雖然馬上並沒什麼卵用)容器的ID,每一個容器都有惟一的ID。
centos
1.容器建立命令解析bash
容器有兩種類型:交互型容器和後臺型容器,具體的含義就是字面意思,相似於在控制檯中執行shell命令添加nohup。網絡
docker run -i -t —name=inspect_shell ubuntu /bin/bashspa
上面這條語句表示建立一個交互型容器,其中:命令行
-i表示打開容器的標準輸入;開發
-t表示爲容器創建一個命令行終端;文檔
-i和-t是建立交互型容器的基本設置,建立的是後臺型容器時使用的參數是-d。
--name表示指定一個容器的名字,可選項;
ubuntu參數表示使用哪一個鏡像去建立容器。ubuntu是一個基礎鏡像,相似的基礎鏡像還有centos、fedora等等;
/bin/bash表示在容器中執行的命令;
2.圖解容器的建立流程
a. 運行docker run命令後,docker先在本地搜索指定的鏡像;
b. 若是沒有找到指定鏡像,就去公有倉庫DockerHub中搜索並下載指定鏡像;
若是在公有倉庫上也找不到指定鏡像,建立失敗,以下;
c. 使用指定鏡像建立容器並啓動;
d. 分配文件系統和配置容器的網絡。 容器的文件系統是在只讀的鏡像文件上增長一層可讀寫的文件層,這樣作能夠保證鏡像不變而只是記錄改變的數據;
e. 執行應用程序;
f. 中止;
容器的建立流程以下圖所示:
參考文檔:《Docker開發實踐》第二章2.1.1建立容器。