Docker入門教程(二)命令
【編者的話】DockerOne組織翻譯了Flux7的Docker入門教程,本文是系列入門教程的第二篇,介紹了Docker的基本命令以及命令的用法和功能。 在Docker系列教程的第一篇文章中,我們瞭解了Docker的基礎知識,知道了它是如何工作以及如何安裝的。在這篇文章中,我們將學習15個Docker命令,並通過實踐來學習它是如何工作的。 首先,讓我們通過下面的命令來檢查Docker的安裝是否正確:
docker info
如果沒有找到這條命令,則表示Docker安裝錯誤。如果安裝正確,則會輸出類似下面的內容:
到這一步Docker裡還沒有映象或是容器。所以,讓我們通過使用命令預先構建的映象來建立來一個:
sudo docker pull busybox
BusyBox是一個最小的Linux系統,它提供了該系統的主要功能,不包含一些與GNU相關的功能和選項。 下一步我們將執行一個“Hello World”的例子,我們暫且叫它“Hello Docker”吧。
docker run busybox /bin/echo Hello Docker
現在,讓我們以後臺程序的方式執行hello docker
:
sample_job=$(docker run -d busybox /bin/sh -c "while true; do echo Docker; sleep 1; done")
sample_job
命令會隔一秒列印一次Docker,使用docker logs
可以檢視輸出的結果。如果沒有給這個job起名字,那這個job就會被分配一個id,以後使用命令例如docker logs
檢視日誌就會變得比較麻煩。
執行docker logs
命令來檢視job的當前狀態:
docker logs $sample_job
所有Docker命令可以用以下命令檢視:
docker help
名為sample_job
的容器,可以使用以下命令來停止:
docker stop $sample_job
使用以下命令可以重新啟動該容器:
docker restart $sample_job
如果要完全移除容器,需要先將該容器停止,然後才能移除。像這樣:
docker stop $sample_job docker rm $sample_job
將容器的狀態儲存為映象,使用以下命令:
docker commit $sample_job job1
注意,映象名稱只能取字元[a-z]和數字[0-9]。 現在,你就可以使用以下命令檢視所有映象的列表:
docker images
在我們之前的Docker教程中,我們學習過映象是儲存在Docker registry。在registry中的映象可以使用以下命令查詢到:
docker search (image-name)
檢視映象的歷史版本可以執行以下命令:
docker history (image_name)
最後,使用以下命令將映象推送到registry:
docker push (image_name)
非常重要的一點是,你必須要知道儲存庫不是根儲存庫,它應該使用此格式(user)/(repo_name)
。
這都是一些非常基本的Docker命令。在我們Docker教程系列的第六章,我們將討論如何使用Docker執行Python的Web應用程式,以及一些進階的Docker命令。