Docker Cheatsheet

1、建立docker

 

docker create:建立容器,處於中止狀態。ubuntu


centos:latest:centos容器:最新版本(也能夠指定具體的版本號)。
本地有就使用本地鏡像,沒有則從遠程鏡像庫拉取。
建立成功後會返回一個容器的ID。
docker run:建立並啓動容器。
交互型容器:運行在前臺,容器中使用exit命令或者調用docker stop、docker kill命令,容器中止。
以下圖已經在前臺開啓一個docker容器: centos


i:打開容器的標準輸入。
t:告訴docker爲容器創建一個命令行終端。
name:指定容器名稱,能夠不填(隨機),建議根據具體使用功能命名,便於管理。
centos:告訴咱們使用什麼鏡像來啓動容器。
/bin/bash:告訴docker要在容器裏面執行此命令。
後臺型容器:運行在後臺,建立後與終端無關,只有調用docker stop、docker kill命令才能使容器中止。bash


d:使用-d參數,使容器在後臺運行。
c: 經過-c能夠調整容器的CPU優先級。默認狀況下,全部的容器擁有相同的CPU優先級和CPU調度週期,但你能夠經過Docker來通知內核給予某個或某幾個容器更多的CPU計算週期。好比,咱們使用-c或者–cpu-shares =0啓動了C0、C一、C2三個容器,使用-c/–cpu-shares=512啓動了C3容器。這時,C0、C一、C2能夠100%的使用CPU資源(1024),但C3只能使用50%的CPU資源(512)。若是這個主機的操做系統是時序調度類型的,每一個CPU時間片是100微秒,那麼C0、C一、C2將徹底使用掉這100微秒,而C3只能使用50微秒。
-c後的命令是循環,從而保持容器的運行。
docker ps:能夠查看正在運行的docker容器。
2、查看
docker ps: 查看當前運行的容器
docker ps -a:查看全部容器,包括中止的。操作系統


標題含義:.net

CONTAINER ID:容器的惟一表示ID。
IMAGE:建立容器時使用的鏡像。
COMMAND:容器最後運行的命令。
CREATED:建立容器的時間。
STATUS:容器狀態。
PORTS:對外開放的端口。
NAMES:容器名。能夠和容器ID同樣惟一標識容器,同一臺宿主機上不容許有同名容器存在,不然會衝突。
docker ps -l :查看最新建立的容器,只列出最後建立的。命令行

docker ps -n=2:-n=x選項,會列出最後建立的x個容器。rest


3、啓動
經過docker start來啓動以前已經中止的docker_run鏡像。
1blog

容器名:docker start docker_run,或者ID:docker start 43e3fef2266c。資源


–restart(自動重啓):默認狀況下容器是不重啓的,–restart標誌會檢查容器的退出碼來決定容器是否重啓容器。
docker run --restart=always --name docker_restart -d centos /bin/sh -c "while true;do echo hello world; sleep;done":
--restart=always:無論容器的返回碼是什麼,都會重啓容器。
--restart=on-failure:5:當容器的返回值是非0時纔會重啓容器。5是可選的重啓次數。

4、終止


docker stop [NAME]/[CONTAINER ID]:將容器退出。
docker kill [NAME]/[CONTAINER ID]:強制中止一個容器。


5、刪除
容器終止後,在須要的時候能夠從新啓動,肯定不須要了,能夠進行刪除操做。
1
docker rm [NAME]/[CONTAINER ID]:不可以刪除一個正在運行的容器,會報錯。須要先中止容器。


一次性刪除:docker自己沒有提供一次性刪除操做,可是可使用以下命令實現:

docker rm 'docker ps -a -q':-a標誌列出全部容器,-q標誌只列出容器的ID,而後傳遞給rm命令,依次刪除容器。
---------------------
做者:孤天浪雨
來源:CSDN
原文:https://blog.csdn.net/u010246789/article/details/53958662
版權聲明:本文爲博主原創文章,轉載請附上博文連接!


進入容器
在使用 -d 參數時,容器啓動後會進入後臺。

某些時候須要進入容器進行操做,包括使用 docker attach 命令或 docker exec 命令,推薦你們使用 docker exec 命令,緣由會在下面說明。

attach 命令
下面示例如何使用 docker attach 命令。

$ docker run -dit ubuntu
243c32535da7d142fb0e6df616a3c3ada0b8ab417937c853a9e1c251f499f550

$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
243c32535da7 ubuntu:latest "/bin/bash" 18 seconds ago Up 17 seconds nostalgic_hypatia

$ docker attach 243c

root@243c32535da7:/#

 

注意: 若是從這個 stdin 中 exit,會致使容器的中止。

exec 命令
-i -t 參數
docker exec 後邊能夠跟多個參數,這裏主要說明 -i -t 參數。

只用 -i 參數時,因爲沒有分配僞終端,界面沒有咱們熟悉的 Linux 命令提示符,但命令執行結果仍然能夠返回。

當 -i -t 參數一塊兒使用時,則能夠看到咱們熟悉的 Linux 命令提示符。

$ docker run -dit ubuntu
69d137adef7a8a689cbcb059e94da5489d3cddd240ff675c640c8d96e84fe1f6

$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
69d137adef7a ubuntu:latest "/bin/bash" 18 seconds ago Up 17 seconds zealous_swirles

$ docker exec -i 69d1 bash
ls
bin
boot
dev
...

$ docker exec -it 69d1 bash

root@69d137adef7a:/#

若是從這個 stdin 中 exit,不會致使容器的中止。這就是爲何推薦你們使用 docker exec 的緣由。

更多參數說明請使用 docker exec --help 查看。

相關文章
相關標籤/搜索