系列文章目錄
本系列主要分為以下六大部分,正在更新中,盡請期待!
- 『 云原生·生之門』
- 『 云原生·前置知識』
- 『 云原生·Docker』
- 『 云原生·Kubernetes』
- 『 云原生·KubeSphere』
- 『 云原生·DevOps』
??點擊關(guān)注本專欄
提示:已經(jīng)更新的或正在更新的文章前面打勾了哈!
前言
容器是 Docker的另一個核心概念。
簡單來說,容器是鏡像的一個運行實例(Java中的對象與類)。所不同的是,鏡像是靜態(tài)的只讀文件,而容器帶有運行時需要的可寫文件層,同時容器中的應(yīng)用進(jìn)程處于運行狀態(tài)。
如果認(rèn)為虛擬機(jī)是模擬運行的一整套操作系統(tǒng)(包括內(nèi)核、應(yīng)用運行態(tài)環(huán)境和其他系統(tǒng)環(huán)境)和跑在上面的應(yīng)用。
那么 Docker容器就是獨立運行的一個(或一組)應(yīng)用,以及它們必需的運行環(huán)境。
接上一篇內(nèi)容現(xiàn)在繼續(xù)來總結(jié)一下Docker容器相關(guān)操作。
一、導(dǎo)入和導(dǎo)出容器
在很多時候我們需要將容器從一個系統(tǒng)遷移到另外一個系統(tǒng),此時可以使用 Docker的導(dǎo)入和導(dǎo)
出功能,這也是 Docker自身提供的一個重要特性。
1.導(dǎo)出容器
導(dǎo)出容器可以導(dǎo)出一個已經(jīng)創(chuàng)建的容器到一個文件,不管容器處于什么狀態(tài),可以使用docker export
命令。
我們可以通過-o選項來指定導(dǎo)出的tar文件名,也可以直接通過重定向來實現(xiàn)。
# 通過-o選項
docker export -o 容器快照名.tar $container_id
#直接通過重定向
docker export $container_id >容器快照名.tar
導(dǎo)出后在本地可以看到有一個容器快照名.tar
的容器快照,有了容器快照之后,我們可以在想要的時候隨時導(dǎo)入。
2.導(dǎo)入容器
導(dǎo)出的文件又可以使用 docker import
命令導(dǎo)入變成鏡像。
如下將快照導(dǎo)入到鏡像test/ubuntu:v1
docker import 容器快照名.tar test/ubuntu:v1
cat 容器快照名.tar | docker import - test/ubuntu:v1
實際上,既可以使用 docker load
命令來導(dǎo)人鏡像存儲文件到本地鏡像庫,也可以使用docker import命令來導(dǎo)入一個容器快照到本地鏡像庫。但是他們是有一定區(qū)別的。
-
docker import
:丟棄了所有的歷史記錄和元數(shù)據(jù)信息,僅保存容器當(dāng)時的快照狀態(tài)。在導(dǎo)入的時候可以重新制定標(biāo)簽等元數(shù)據(jù)信息。 -
docker load
:將保存完整記錄,體積較大。
二、查看容器
1.查看容器詳情
查看容器詳情可以使用 docker container inspect $container_id
子命令,格式如下:
docker container inspect [OPTTONS] $container_id
査看某容器的具體信息,會以json格式返回包括容器ID、創(chuàng)建時間、路徑、狀態(tài)、鏡像、配置等在內(nèi)的各項信息。
2.查看容器進(jìn)程
查看容器內(nèi)進(jìn)程可以使用 docker top $container_id
子命令,格式如下:
docker top [OPTIONS] $container_id [ CONTAINER..]
這個命令類似于Linux系統(tǒng)中的 top 命令,會打印出容器內(nèi)的進(jìn)程信息包括PID、用戶、時間、命令等。
3.查看統(tǒng)計信息
查看統(tǒng)計信息可以使用docker stats
子命令,格式如下:
docker stats [ OPTTONS] $container_id
這個命令會顯示容器CPU、內(nèi)存、存儲、網(wǎng)絡(luò)等使用情況的統(tǒng)計信息。
OPTIONS說明:
-
-a, -all
:輸出所有容器統(tǒng)計信息,默認(rèn)僅在運行中; -
-format string
:格式化輸出信息; -
-no-stream
:不持續(xù)輸出,默認(rèn)會自動更新持續(xù)實時結(jié)果; -
-no-trunc
:不截斷輸出信息;
三、其他容器命令
1.復(fù)制文件
使用container cp
命令支持在容器和主機(jī)之間復(fù)制文件。
例如:將本地的路徑下的文件 c1 復(fù)制到 test 容器的 /tmp 路徑下:
docker cp c1 test:/tmp/
2.查看變更
使用container diff
查看容器內(nèi)文件系統(tǒng)的變更。
例如:查看test容器內(nèi)的數(shù)據(jù)修改
docker container diff test
3.查看端口映射
使用container port
命令可以查看容器的端口映射情況。
例如:查看test容器的端口映射情況
docker container port test
4.更新配置
使用 container update
命令可以更新容器的一些運行時配置,主要是一些資源限制份額。
5.查看容器日志
使用docker logs可以獲取容器的日志,格式如下:
docker logs [OPTIONS] $container_id
OPTIONS說明:
-
-f
: 跟蹤日志輸出 -
--since
:顯示某個開始時間的所有日志 -
-t
: 顯示時間戳 -
--tail
:僅列出最新N條容器日志
例如:查看指定時間后的日志,只顯示最后100行
$ docker logs -f -t --since="2020-02-08" --tail=50 CONTAINER_ID
看看本專欄文章有哪些吧!
本系列文章目錄:
- 『 云原生·生之門』
- 『 云原生·前置知識』
- 『 云原生·Docker』
- 『 云原生·Kubernetes』
- 『 云原生·KubeSphere』
- 『 云原生·DevOps』
??點擊關(guān)注本專欄
可以看出來本系列文章將會帶你從-1到1的學(xué)習(xí)云原生的,一起加油吧!文章來源:http://www.zghlxwxcb.cn/news/detail-456399.html
總結(jié)
通過本篇內(nèi)容的介紹和示例,相信大家已經(jīng)掌握了對容器進(jìn)行管理的各項操作命令。接下來我會繼續(xù)對Docker進(jìn)行總結(jié)介紹的,如果感興趣可以關(guān)注一下本專欄!文章來源地址http://www.zghlxwxcb.cn/news/detail-456399.html
到了這里,關(guān)于『 云原生·Docker』Docker容器相關(guān)操作(二)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!