容器生命週期
初學Docker,也許會像我一樣會產生很多疑惑。比如鏡像和容器的關係是什麼?再比如我docker run起來的容器exit退出後怎麼不見了?也有可能會被各種docker create/run/start/unpause/restart,pause/stop/rm/kill等等命令搞暈。這時應該想到,容器其實本質是Host宿主機的進程,操作系統對於進程的管理是基於進程的狀態切換的,進程從創建到銷燬可能經過的路徑圖可以稱之爲“生命週期”。因此也就不難想到,其實對容器的管理也應該有一套狀態以及狀態轉移的條件,這就是Docker容器的生命週期。
出於個人視角,我傾向於將鏡像與容器的關係理解爲類和對象/實例的關係。
我們可以通過以下命令查看所有容器的當前運行狀態:
$ docker ps -a
可以使用以下命令查看所有處於runnig運行狀態的容器
$ docker ps
上面的容器生命週期圖可以幫助初學者更好的理解容器當前運行狀態,當需要轉移到另外一個狀態時,能夠快速的查找相應的命令。
對於已經熟練使用docker的人來說,這張圖應該已經融會貫通了。
(未完待更…)
基本命令
查看所有本地鏡像
$ docker images
進入一個在運行狀態的容器(-i 代表交互模式運行)
$ docker exec -i 容器id
將鏡像實例化爲一個容器,並通過交互命令行運行容器
$ docker run -it 鏡像名 /bin/sh
(未完待更…)