1. 程式人生 > >為小白準備的重要 Docker 命令說明

為小白準備的重要 Docker 命令說明

Docker 命令語法

12 $docker[option][command][arguments]

要列出 docker 支援的所有命令,執行

12 $docker

我們會看到如下結果,

12345678910111213141516171819202122232425262728293031323334353637383940414243 attach Attach toarunning containerbuild  Build an image fromaDockerfilecommit  Createanewimage fromacontainer's changescp  Copy files/folders between a container and the local filesystem
create  Create a new containerdiff  Inspect changes on a container'sfilesystemevents  Get real time events from the serverexec  Runacommand inarunning containerexport  Exportacontainer'sfilesystem asatar archivehistory  Show the history of an imageimages  List imagesimport  Import the contents fromatarball tocreateafilesystem imageinfo  Display system-wide informationinspect  Returnlow-level information onacontainer orimagekill  Killarunning containerload  Load an image fromatar archive orSTDINlogin  Log intoaDocker registrylogout  Log out fromaDocker registrylogs  Fetch the logs ofacontainernetwork  Manage Docker networkspause  Pause all processes withinacontainerport  List port mappings oraspecific mapping forthe CONTAINERps  List containerspull  Pull an image orarepository fromaregistrypush  Push an image orarepository toaregistryrename  Renameacontainerrestart  Restartacontainerrm  Remove one ormore containersrmi  Remove one ormore imagesrun  Runacommand inanewcontainersave  Save one ormore images toatar archivesearch  Search the Docker Hub forimagesstart  Start one ormore stopped containersstats  Displayalive stream of container(s)resource usage statisticsstop  Stoparunning containertag  Tag an image intoarepositorytop  Display the running processes ofacontainerunpause  Unpause all processes withinacontainerupdate  Update configuration of one ormore containersversion  Show the Docker version informationvolume  Manage Docker volumeswait  Block untilacontainer stops,thenprint its exit code

要進一步檢視某個命令支援的選項,執行:

12 $docker docker-subcommand info

就會列出 docker 子命令所支援的選項了。

測試與 Docker Hub 的連線

預設,所有映象都是從 Docker Hub 中拉取下來的。我們可以從 Docker Hub 上傳或下載作業系統映象。為了檢查我們是否能夠正常地通過 Docker Hub 上傳/下載映象,執行

12 $docker run hello-world

結果應該是:

1234 Hello from Docker.Thismessage shows that your installation appears tobe working correctly.

輸出結果表示你可以訪問 Docker Hub 而且也能從 Docker Hub 下載 docker 映象。

搜尋映象

搜尋容器的映象,執行

12 $docker search Ubuntu

我們應該會得到可用的 Ubuntu 映象的列表。記住,如果你想要的是官方的映象,請檢查 official 這一列上是否為 [OK]

下載映象

一旦搜尋並找到了我們想要的映象,我們可以執行下面語句來下載它:

12 $docker pull Ubuntu

要檢視所有已下載的映象,執行:

12 $docker images

執行容器

使用已下載映象來執行容器,使用下面命令:

12 $docker run-it Ubuntu

這裡,使用 -it 會開啟一個 shell 與容器互動。容器啟動並執行後,我們就可以像普通機器那樣來使用它了,我們可以在容器中執行任何命令。

顯示所有的 docker 容器

要列出所有 docker 容器,執行:

12 $docker ps

會輸出一個容器列表,每個容器都有一個容器 id 標識。

停止 docker 容器

要停止 docker 容器,執行:

12 $docker stop container-id

從容器中退出

要從容器中退出,執行:

12 $exit

儲存容器狀態

容器執行並更改後(比如安裝了 apache 伺服器),我們可以儲存容器狀態。這會在本地系統上儲存新建立映象。

執行下面語句來提交併儲存容器狀態:

12 $docker commit85475ef774repository/image_name

這裡,commit 命令會儲存容器狀態,85475ef774,是容器的容器 id,repository,通常為 docker hub 上的使用者名稱 (或者新加的倉庫名稱)image_name,是新映象的名稱。

我們還可以使用 -m-a 來新增更多資訊。通過 -m,我們可以留個資訊說 apache 伺服器已經安裝好了,而 -a 可以新增作者名稱。

像這樣:

12 docker commit-m"apache server installed"-a"Dan Daniels"85475ef774daniels_dan/Cent_container

我們的教程至此就結束了,本教程講解了一下 Docker 中的那些重要的命令,如有疑問,歡迎留言。