docker實踐總結 容器與Linux程序

2021-10-24 02:01:36 字數 941 閱讀 7508

docker容器啟動之後會有相應的linux程序,容器與程序是怎麼樣的對應關係?乙個容器乙個程序嗎,還是乙個容器多個程序?

docker ps檢視所有已經啟動的容器,從第一列找到乙個[容器id] ,下一步備用;

ps -ef |grep [容器id]檢視該容器對應的程序資訊,從中找到 程序id,下一步備用;

pstree -ap [程序id]看到該容器的程序樹資訊。

命令執行結果如下:

從上面截圖中我們發現:

父程序22745是容器的程序,這個程序下面還有多個 bash 子程序。

bash程序實際上是通過docker exec命令產生的。

由於我之前執行了:

(1) 三次docker exec -it [容器id] bash --login

(2) 兩次docker exec -it [容器id] bash

而且我都沒有退出來,因此啟動5個bash子程序。

截圖中的bash,23576子程序下面還有乙個python,23599 testwhile.py的子程序,

這是因為我通過exec bash進入容器,然後在bash中(即bash,23576程序)執行了乙個python指令碼,該指令碼是乙個while迴圈,一直未結束。

因此,每乙個容器都會對應乙個程序,執行docker exec會啟動對應的子程序,在容器bash中啟動程式也會生成該bash的子程序。

以上命令是centos中執行的,可能在其他系統平台有所區別。

docker總結 容器

五 容器的底層技術 attach 與 exec 主要區別如下 docker exec it bash sh是執行 exec 最常用的方式 ps 如果只是為了檢視啟動命令的輸出,可以使用 docker logs 命令 f的作用與tail f類似,能夠持續列印輸出 工具類的容器 測試 docker ru...

docker 實踐總結

一 安裝docker docker要求執行在centos 7上,要求系統為64位,系統核心版本3.10以上 1.uname an 檢視當前系統版本 3.service docker start 啟動docker服務 4.docker version 檢查docker是否安裝成功 二 常用操作 1.映...

docker實踐之容器的匯入與匯出

前言 docker的流行與它對容器的易分享和易移植密不可分。使用者不僅可以把容器提交到公共伺服器上,還可以將容器匯出到本地檔案系統中。同樣,我們也可以將匯出的容器重新匯入到docker環境中去。如果要匯出本地某個容器,可以使用dwww.cppcns.comocker export命令,可以使用doc...