1. 程式人生 > >docker基礎學習(進入與退出docker容器--圖文結合)

docker基礎學習(進入與退出docker容器--圖文結合)

今天開始學習docker容器技術。Docker 可以讓開發者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,然後釋出到任何流行的 Linux 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面,更重要的是容器效能開銷極低。所以容器技術是很重要的一門技術。

首先我們要在自己的系統中安裝好docker。我在centOS7中安裝了docker,具體步驟可以看這篇部落格:https://blog.csdn.net/JJBOOM425/article/details/84584593

一、啟動與關閉docker

  • 啟動docker服務:(以下兩個命令都可以啟動docker服務)
service docker start
systemctl start docker

  • 關閉docker服務:
service docker stop
systemctl stop docker

二、啟動docker中映象(image)的容器

如果剛剛接觸docker,可能還不瞭解docker的整體架構,為了後面的更好的理解,可以看一下下圖的結構圖:

docker容器可以理解為在沙盒中執行的程序。這個沙盒包含了該程序執行所必須的資源,包括檔案系統、系統類庫、shell 環境等等。但這個沙盒預設是不會執行任何程式的。你需要在沙盒中執行一個程序來啟動某一個容器。這個程序是該容器的唯一程序,所以當該程序結束的時候,容器也會完全的停止。

我們這裡開啟docker中的某個容器Container:

docker run -i -r unbuntu

使用docker run ... 來開啟一個容器,這裡的 -i 引數獲取一個互動式的連線通過獲取container的輸入, -t 引數是進入這個容器的終端;ubuntu 是我們啟動的映象 image。後面我也通過 ls 看了此時的檔案。其中 [email protected]: 中9cc6099a274f是容器的內部 ID。

三、退出docker中映象的容器

退出容器直接輸入 exit 

或者按  Ctrl+D  就可以退出容器。如下圖:

拓展:

我們可以通過 docker images 看現在存在的映象,如下圖:

可以看到這裡存在的映象,一個ubuntu映象才86.2M,可能會問ubuntu系統怎麼會這麼小?

因為Linux 作業系統由核心空間和使用者空間組成。如下圖所示:

核心空間是 kernelLinux 剛啟動時會載入 bootfs 檔案系統之後 bootfs 會被解除安裝掉。使用者空間的檔案系統是 rootfs包含我們熟悉的 /dev, /proc, /bin 等目錄。對於 base 映象來說底層直接用 Host 的 kernel自己只需要提供 rootfs 就行了。而對於一個精簡的 OSrootfs 可以很小隻需要包括最基本的命令、工具和程式庫就可以了。

所以ubuntu映象才會這麼小,這也就是docker的優點。