1. 程式人生 > >5 docker容器基本操作命令

5 docker容器基本操作命令

1.啟動容器  run

docker run IMAGE [COMMAND]  [ARG...]

IMAGE 是指啟動容器所使用的作業系統映象
[COMMAND]  [ARG...] 指的是容器啟動後執行的命令及其引數
例如:

docker run ubuntu echo 'hello world'

2.啟動互動式容器:  

docker run -i -t IMAGE /bin/bash

在run命令中增加了兩個引數 -i  -t ,並在容器啟動時執行bash命令

-i   --interactive=true | fasle 預設是false       

用來告訴docker守護程序為容器始終開啟標準輸入

-t   --tty = true | false 預設是false 

告訴docker要為建立的容器分配一個--tty終端,這樣新建立的容器才能提供一個互動式的shell

3.檢視容器狀態  ps

docker ps [-a] [-l]

[-a]  列出所有的容器

docker ps  -a 

[-l]    列出最新建立的容器

docker ps  -i

inspect命令: 檢視 id為ffccbc3188b1 的容器詳細配置

docker inspect ffccbc3188b1  

自定義容器名:  --name

#建立容器名為container01的容器
docker run --name=container01 -i -t ubuntu /bin/bash

#這時可以檢視到建立的容器中有container01
docker ps -a

#想要檢視詳細配置就可以直接輸入自定義的名字container01
docker inspect container01

4.重啟、停止容器

重啟容器   start

docker start [-i]  容器名
eg: docker start -i container01

停止容器     exit

exit

刪除停止的容器   rm

docker rm 容器名
eg: docker rm container01

5.守護式容器

(1)以守護形式執行容器      Ctrl + P   Ctrl + Q

#啟動互動式容器
docker run -i -t IMAGE /bin/bash

#退出互動式容器的bash,這樣容器就會在後臺執行
Ctrl + P   Ctrl + Q

(2)附加到執行的容器(進入剛剛退出的容器)     attach 

注意:容器名既可以是CONTAINER ID的名字,也可以是NAMES的名字

docker attach 容器名

(3)啟動守護式容器:    -d

-d   是指以後臺的形式執行命令

docker run -d 映象名 [COMMAND] [ARG...]

#指定容器名為ac1 迴圈執行命令,間隔時間為一秒
docker run --name ac1 -d ubuntu /bin/sh -c "while true; do echo hello world; sheep 1; done"

(4)檢視容器日誌  logs

docker logs [-f] [-t] [--tail] 容器名

eg: 0指的是顯示最新的日誌
docker logs -tf --tail 0 ac1

-f       --follows=true | false 預設為false,告訴logs命令一直跟蹤日誌的變化並返回結果

-t       --timestamps=true | false 預設為false,在返回的結果上加上時間戳

--tail  = "all"   是選擇返回結尾處多少數量的日誌,如果不指定的話就返回所有的日誌

(5)檢視容器內程序  top

#檢視哪些容器正在執行
docker ps

#檢視ac1容器的程序情況
docker top ac1

(6)在執行中的容器內啟動新程序    exec

docker exec [-d] [-i] [-t]  容器名 [COMMAND] [ARG...] 
eg:
docker exec -i -t ac1 /bin/bash

(7)停止守護式容器  stop    kill

stop   會給容器傳送一個訊號,等待容器的停止

kill     直接停止容器

容器停止後,都會返回容器名

docker stop  容器名
docker kill  容器名