docker命令

1、service docker status
查看docker守護進程運行的狀態

2、service docker start
啓動docker的守護進程

3、service docker stop
關閉docker的守護進程

4、docker info
返回所有容器和鏡像的數量、docker使用的執行驅動和存儲驅動、以及docker的基本配置信息

5、docker run [OPTIONS] IMAGE [COMMAND] [ARG…]

docker run -i -t ubuntu /bin/bash
表示創建並啓動一個容器,該容器有自己的網絡、IP地址;容器中啓動了一個ubuntu系統;-i表示設置STDIN,容器運行後接受輸入,-t表示容器運行後啓動一個tty終端,便於與用戶交互,-t和-t都屬於OPTIONS;ubuntu是要運行鏡像的名字; /bin/bash表示容器啓動後運行的初始命令。
運行命令後,會顯示“root@410923f574b8:/# ”,表示容器創建並啓動成功,容器的ID是410923f574b8,容器中成功運行了ubuntu系統,啓動了一個root的bash,然後就可以在這個容器中的ubuntu上執行各種shell命令了;執行exit命令就回到了原宿主ubuntu上了。
執行exit後,容器就停止了,只有在制定的/bin/bash命令處於運行狀態的時候,容器纔會處於運行狀態,一旦退出容器,/bin/bash命令也就停止了,容器也就隨之停止了。

docker run --name my_ubuntu -i -t ubuntu /bin/bash 
#用--name指定容器的名字爲my_ubuntu,如不指定,系統會默認爲容器指定一個名字。如果創建容器相同的名字,會提示失敗

docker run --name my_ubuntu -d ubuntu /bin/bash -c "while true; do echo hello lzj; sleep 2; done"
創建守護式容器,沒有交互終端;-d 指明創建的容器爲守護容器; -c指定?

docker run --restart=always --name my_ubuntu -d ubuntu /bin/bash -c "while true; do echo hello lzj; sleep 2; done"
#--restart=always指定當my_ubuntu退出後,會自動重啓。
docker run --restart=on-failure --name my_ubuntu -d ubuntu /bin/bash -c "while true; do echo hello lzj; sleep 2; done"
#--restart=on-failure 指定當容器退出代碼非0值的時候,纔會自動重啓。
docker run --restart=on-failure:10 --name my_ubuntu -d ubuntu /bin/bash -c "while true; do echo hello lzj; sleep 2; done"
#指定最多重啓次數爲10

docker run -i -t --name docker_name ubuntu:13.06 /bin/bash
#創建一個docker_name容器,運行13.06版本的ubuntu鏡像。當倉庫中有很多版本的鏡像,用此版本指定

6、docker ps [OPTIONS]
docker ps #默認顯示正在運行的容器
docker ps -a #列出所有容器,包括正在運行的和已經停止的
docker ps -l #列出最後一個運行的容器,無論這個容器是正在運行的還是已經停止的
docker ps -l -q #列出最後一個運行的容器的id,無論這個容器是正在運行的還是已經停止的
docker ps -n x #顯示最後x個容器,不論容器是運行還是已經停止狀態的

7、docker start docker_name(容器名)/docker_id
對於已經停止的ring器,可以用start命令啓動,或者用docker restart docker_name(容器名)/docker_id

8、docker start docker_name(容器名)/docker_id 與 docker restart docker_name(容器名)/docker_id區別
docker start docker_name(容器名)/docker_id 會丟棄創建容器時指定的各種參數以及初始運行的命令,比如-i 、 -t、 、/bin/bash。
docker restart docker_name(容器名)/docker_id 會保留上述參數,只需要運行 docker attach my_ubuntu,又可以進行交互界面

9、docker stop docker_name(容器名)/docker_id #停止容器

10、docker logs [OPTIONS] CONTAINER
docker logs docker_name(容器名)/docker_id
打印容器的運行的日誌,可以是運行的,也可以是已經停止的容器;尤其是對於守護式容器,可以打印出日誌
dcoker logs -f docker_name(容器名)/docker_id #可以實時監控日誌
docker logs --tail 10 docker_name(容器名)/docker_id #打印出最後10條日誌

11、docker top docker_name(容器名)/docker_id #顯示docker_name容器中進程

12、docker stats [OPTIONS] [CONTAINER…]
docker status #可以查看所有守護進程佔用的CPU、內存、網絡I/O及存儲性能I/O的性能和指標

13、在已經啓動的容器內部運行進程
docker exec -d docker_name/docker_id touch /home/test.txt
# -d表示後臺進程,表示在docker_name容器中運行一個後臺進程,用於創建一個test.txt文件,注意該文件存在於容器home目錄下,而不是宿主機的home下

docker exec -i -t docker_name/docker_id /bin/bash
#表示創建tty終端,並捕捉STDIN,緊接着在容器內啓動一個交互式命令,此時執行exit命令,會退出這個交互式窗口,並不會結束這個容器

14、docker kill [OPTIONS] CONTAINER [CONTAINER…]
docker kill docker_name/docker_id #殺死指定的容器

docker kill 與 docker stop 區別
docker stop命令會向指定容器發送SIGTERM信號
docker kill命令會向指定容器發送SIGKILL信號

15、docker inspect [OPTIONS] NAME|ID [NAME|ID…]
docker inspect docker_name/docker_id #可以查看docker_name容器的詳細信息,也可以同時查看多個容器的信息

docker inspect 與 docker ps 區別
docker inspect顯示指定容器的詳細信息;docker ps顯示指定容器的簡單信息

16、docker rm [OPTIONS] CONTAINER [CONTAINER…]
docker rm docker_name/docker_id #刪除指定容器
docker rm -f docker_name/docker_id #強制刪除指定容器
docker rm sudo docker ps -a -q #刪除現有的全部容器,-a會返回所有的容器,-q只返回容器的ID,而不會返回其它的信息
docker rm $(docker ps -a -q) #刪除所有容器

17、docker image COMMAND
docker image ls #列出本地所有的鏡像
docker image rm -f docker_name/docker_id #強制刪除指定的鏡像

18、docker pull [OPTIONS] NAME[:TAG|@DIGEST]
docker pull ubuntu:18.10 #從docker hub上拉取18.10版本的ubuntu系統

19、docker search [OPTIONS] TERM
docker search ubuntu #從docker hub上查找所有可用的ubuntu鏡像

20、做鏡像,比如在ubuntu上安裝一個apache,然後做成一個鏡像
1、登錄docker hub
docker login
2、運行ubuntu鏡像
docker run -i -t ubuntu /bin/bash
3、在容器中安裝apache
apt-get update && apt-get install apache
4、退出容器,把容器做成鏡像
docker commit 4fed29523119 softwarebird/apache2 #4fed29523119爲容器ID,softwarebird/apache2爲倉庫名和鏡像名
5、或者做鏡像時指定更多信息
docker commit -m"my image" -a"lzj" 4fed29523119 softwarebird/apache2:0.1
#-m指定提交的信息,-a指定作者

21、docker build [OPTIONS] PATH | URL | -

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章