1. 程式人生 > 其它 >docker是幹什麼的,docker常用命令每日一練

docker是幹什麼的,docker常用命令每日一練

目錄

一、百度百科

二、Docker安裝

1、解除安裝Docker

2、需要的安裝包

3、設定映象倉庫

4、安裝Docker相關

5、啟動Docker

6、使用docker version檢視版本

7、啟動hello world映象

8、解除安裝

三、run的流程和docker原理

1、run的流程

2、docker原理

3、docker為何比VM快?

四、Docker映象常用命令

1、基本命令

2、搜尋映象

3、下載映象

4、刪除映象

五、docker容器常用命令

1、下載容器

2、docker run [可選引數] image

3、列出所有的執行的容器

4、退出容器

5、刪除容器

6、啟動和停止容器

7、進入當前正在執行的容器

8、從容器內拷貝檔案到主機

9、其它常用命令

六、docker常用命令小結


一、百度百科

Docker是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴到一個可移植的映象中,然後釋出到任何流行的Linux或Windows機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面。

一個完成的docker有以下幾個部分組成:

  1. DockerClient 客戶端
  2. Docker Daemon 守護程序
  3. Docker Image 映象
  4. Docker Container 容器

二、Docker安裝

1、解除安裝Docker

  1. sudo yum remove docker \
  2. docker-client \
  3. docker-client-latest \
  4. docker-common \
  5. docker-latest \
  6. docker-latest-logrotate \
  7. docker-logrotate \
  8. docker-engine

2、需要的安裝包

yum install -y yum-utils

3、設定映象倉庫

  1. yum-config-manager \
  2. --add-repo \
  3. https://download.docker.com/linux/centos/docker-ce.repo

用國內的

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新軟體包索引

yum mackecache fast

4、安裝Docker相關

ce社群版,ee企業版,推薦安裝企業版

yum install docker-ce docker-ce-cli containerd.io

5、啟動Docker

systemctl start docker

6、使用docker version檢視版本

7、啟動hello world映象

docker run hello-world

8、解除安裝

  1. yum remove docker-ce docker-ce-cli containerd.io
  2. rm -rf /var/lib/docker
  3. rm -rf /var/lib/containerd

三、run的流程和docker原理

1、run的流程

2、docker原理

3、docker為何比VM快?

  1. Docker有著比虛擬機器更少的抽象層
  2. docker利用的是宿主機的核心,VM需要的是Guest OS。

四、Docker映象常用命令

1、基本命令

docker version

docker info

docker 命令 --help #萬能命令

docker images

解釋:

  1. REPOSITORY:映象的倉庫源
  2. TAG:映象的標籤
  3. IMAGE ID:映象的ID
  4. CREATE:映象的建立時間
  5. SIZE:映象的大小

可選項

-a:列出全部的映象

-q:只顯示映象的ID

2、搜尋映象

docker search

可選項

--filter-STATUS-3000 #搜尋大於3000的

3、下載映象

指定版本下載

docker pull 映象名[:tag]

4、刪除映象

docker rmi -f 映象id

五、docker容器常用命令

1、下載容器

docker pull centos

2、docker run [可選引數] image

引數說明:

  1. --name 容器名稱
  2. -d 後臺方式執行
  3. -it 使用互動方式執行,進入容器檢視內容(例如:docker run -it centos /bin/bash)
  4. -p 指定容器的埠號 -p 8080:8080(主機埠:容器埠)

3、列出所有的執行的容器

docker ps [引數]

  1. -a 列出當前正在執行的容器
  2. -n 顯示最近建立的容器
  3. -q 只顯示容器的編號

例如:docker ps -aq 顯示當前正在執行的容器的編號

4、退出容器

exit

5、刪除容器

  1. docker rm 容器id 不能刪除正在執行的容器
  2. docker rm -f $(docker ps -a) 刪除所有的容器
  3. docker ps -a -q|xargs docker rm 刪除所有的容器

6、啟動和停止容器

  1. docker start 容器id
  2. docker restart 容器id
  3. docker stop 容器id
  4. docker kill 容器id 強制停止

7、進入當前正在執行的容器

方式一:docker exec -it 容器id /bin/bash 進入容器後開啟一個新的終端(常用)

方式二:docker attach 容器id 進入容器當前正在執行的終端

8、從容器內拷貝檔案到主機

docker cp 容器id:容器內路徑 主機路徑

例如:docker cp 容器id:/home/test.java /home

9、其它常用命令

(1)後臺啟動容器 -d

(2)檢視日誌命令

docker logs --help

顯示指定行數的日誌:

docker logs -tf --tail 10 容器id

-f:內容,,,-t:時間

例如:迴圈執行

docker run -d centos /bin/sh -c "while;do echo hello world;sleep 1;done"

(3)顯示容器中的進行資訊

檢視docker內部的程序資訊:docker top 容器id

(4)檢視容器的元資料

docker inspect --help

顯示容器的所有資訊:

docker inspect 容器id

六、docker常用命令小結

常用命令 命令含義
attach 當前shell下attach連線指定執行映象
build 通過Dockerfile定製映象
commit 提交當前容器為新的映象
cp 從容器中拷貝指定檔案或者目錄到宿主機中
create 建立一個新的容器,同run 但不啟動容器
diff 檢視docker容器變化
events 從docker服務獲取容器實時事件
exec 在已存在的容器上執行命令
export 匯出容器的內容流作為一個tar歸檔檔案(對應import)
history 展示一個映象形成歷史
images 列出系統當前映象
import 從tar包中的內容建立一個新的檔案系統映像(對應export)
info 顯示系統相關資訊
inspect 檢視容器詳細資訊
kill 強制停止指定docker容器
load 從一個tar包中載入一個映象(對應save)
login 註冊或者登陸一個docker源伺服器
logout 從當前Docker registry退出
logs 輸出當前容器日誌資訊
pause 暫停容器
port 檢視對映埠對應的容器內部源埠
ps 列出容器列表
pull 從docker映象源伺服器拉取指定映象或者庫映象
push 推送指定映象或者庫映象至docker源伺服器
rename 重新命名容器
restart 重啟執行的容器
rm 移除一個或者多個容器
rmi 移除一個或多個映象(無容器使用該映象才可以刪除,否則需要刪除相關容器才可以繼續或者-f強制刪除)
run 建立一個新的容器並執行一個命令
save 儲存一個映象為一個tar包(對應load)
search 在docker hub中搜索映象
start 啟動容器
stats 統計容器使用資源
stop 停止容器
tag 給源中映象打標籤
top 檢視容器中執行的程序資訊
unpause 取消暫停容器
version 檢視容器版本號
wait 擷取容器停止時的退出狀態值

轉載請註明原文連結:https://www.cnblogs.com/yuanyuzhou/p/15809113.html

個人網站:www.dianjilingqu.com