av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

Docker容器管理基本命令

Docker是一個(gè)開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個(gè)可移植的鏡像中,然后發(fā)布到任何流行的Linux或Windows機(jī)器上,也可以實(shí)現(xiàn)虛擬化。容器是完全使用沙箱機(jī)制,相互之間不會(huì)有任何接口。幾乎沒有性能開銷,可以很容易地在機(jī)器和數(shù)據(jù)中心運(yùn)行,下面為大家分享一下Docker 容器管理命令

公司主營業(yè)務(wù):網(wǎng)站制作、成都網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出代縣免費(fèi)做網(wǎng)站回饋大家。

如何運(yùn)行 Docker 容器?

眾所周知,Docker 容器只是一個(gè)運(yùn)行于宿主操作系統(tǒng)上的應(yīng)用進(jìn)程,所以你需要一個(gè)鏡像來運(yùn)行它。Docker 鏡像以進(jìn)程的方式運(yùn)行時(shí)就叫做 Docker 容器。你可以加載本地 Docker 鏡像,也可以從 Docker Hub 上下載。Docker Hub 是一個(gè)提供公有和私有鏡像來進(jìn)行拉取操作的集中倉庫。官方的 Docker Hub 位于 hub.docker.com。 當(dāng)你指示 Docker 引擎運(yùn)行容器時(shí),它會(huì)首先搜索本地鏡像,如果沒有找到,它會(huì)從 Docker Hub 上拉取相應(yīng)的鏡像。

讓我們運(yùn)行一個(gè) Apache web 服務(wù)器的 Docker 鏡像,比如 httpd 進(jìn)程。你需要運(yùn)行 docker container run 命令。舊的命令為 docker run, 但后來 Docker 添加了子命令部分,所以新版本支持下列命令:

   root@kerneltalks # docker container run -d -p 80:80 httpd
   Unable to find image 'httpd:latest' locally
   latest: Pulling from library/httpd
   3d77ce4481b1: Pull complete
   73674f4d9403: Pull complete
   d266646f40bd: Pull complete
   ce7b0dda0c9f: Pull complete
   01729050d692: Pull complete
   014246127c67: Pull complete
   7cd2e04cf570: Pull complete
   Digest: sha256:f4610c3a1a7da35072870625733fd0384515f7e912c6223d4a48c6eb749a8617
   Status: Downloaded newer image for httpd:latest
   c46f2e9e4690f5c28ee7ad508559ceee0160ac3e2b1688a61561ce9f7d99d682

Docker 的 run 命令將鏡像名作為強(qiáng)制參數(shù),另外還有很多可選參數(shù)。常用的參數(shù)有:

  • -d:從當(dāng)前 shell 脫離容器
  • -p X:Y:綁定容器的端口 Y 到宿主機(jī)的端口 X
  • –name:命名你的容器。如果未指定,它將被賦予隨機(jī)生成的名字
  • -e:當(dāng)啟動(dòng)容器時(shí)傳遞環(huán)境編輯及其值

通過以上輸出你可以看到,我們將 httpd 作為鏡像名來運(yùn)行容器。接著,本地鏡像沒有找到,Docker 引擎從 Docker Hub 拉取了它。注意,它下載了鏡像 httpd:latest, 其中 : 后面跟著版本號(hào)。如果你需要運(yùn)行特定版本的容器,你可以在鏡像名后面注明版本名。如果不提供版本名,Docker 引擎會(huì)自動(dòng)拉取最新的版本。輸出的最后一行顯示了你新運(yùn)行的 httpd 容器的唯一 ID。

如何列出所有運(yùn)行中的 Docker 容器?

現(xiàn)在,你的容器已經(jīng)運(yùn)行起來了,你可能想要確認(rèn)這一點(diǎn),或者你想要列出你的機(jī)器上運(yùn)行的所有容器。你可以使用 docker container ls 命令。在舊的 Docker 版本中,對(duì)應(yīng)的命令為 docker ps。

   root@kerneltalks # docker container ls
   CONTAINER ID        IMAGE               COMMAND              CREATED             STATUS              PORTS                NAMES
   c46f2e9e4690        httpd               "httpd-foreground"   11 minutes ago      Up 11 minutes       0.0.0.0:80->80/tcp   cranky_cori

列出的結(jié)果是按列顯示的。每一列的值分別為:

  • Container ID :一開始的幾個(gè)字符對(duì)應(yīng)你的容器的唯一 ID
  • Image :你運(yùn)行容器的鏡像名
  • Command :容器啟動(dòng)后運(yùn)行的命令
  • Created :創(chuàng)建時(shí)間
  • Status :容器當(dāng)前狀態(tài)
  • Ports :與宿主端口相連接的端口信息
  • Names :容器名(如果你沒有命名你的容器,那么會(huì)隨機(jī)創(chuàng)建)

如何查看 Docker 容器的歷史紀(jì)錄?

在第一步我們使用了 -d 參數(shù)來將容器,在它一開始運(yùn)行的時(shí)候,就從當(dāng)前的 shell 中脫離出來。在這種情況下,我們不知道容器里面發(fā)生了什么。所以為了查看容器的歷史紀(jì)錄,Docker 提供了 logs 命令。它采用容器名稱或 ID 作為參數(shù)。

   root@kerneltalks # docker container logs cranky_cori
   AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message    AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message
   [Thu May 31 18:35:07.301158 2018] [mpm_event:notice] [pid 1:tid 139734285989760] AH00489: Apache/2.4.33 (Unix) configured -- resuming normal operations
   [Thu May 31 18:35:07.305153 2018] [core:notice] [pid 1:tid 139734285989760] AH00094: Command line: 'httpd -D FOREGROUND'

這里我使用了容器名稱作為參數(shù)。你可以看到在我們的 httpd 容器中與 Apache 相關(guān)的歷史紀(jì)錄。

如何確定 Docker 容器的進(jìn)程?

容器是一個(gè)使用宿主資源來運(yùn)行的進(jìn)程。這樣,你可以在宿主系統(tǒng)的進(jìn)程表中定位容器的進(jìn)程。讓我們?cè)谒拗飨到y(tǒng)上確定容器進(jìn)程。

Docker 使用著名的 top 命令作為子命令的名稱,來查看容器產(chǎn)生的進(jìn)程。它采用容器的名稱或 ID 作為參數(shù)。在舊版本的 Docker 中,只可運(yùn)行 docker top 命令。在新版本中,docker top 和 docker container top 命令都可以生效。

   root@kerneltalks # docker container top  cranky_cori
   UID                 PID                 PPID                C                   STIME               TTY                 TIME                CMD
   root                15702               15690               0                   18:35               ?                   00:00:00            httpd -DFOREGROUND
   bin                 15729               15702               0                   18:35               ?                   00:00:00            httpd -DFOREGROUND
   bin                 15730               15702               0                   18:35               ?                   00:00:00            httpd -DFOREGROUND
   bin                 15731               15702               0                   18:35               ?                   00:00:00            httpd -DFOREGROUND
   
   root@kerneltalks # ps -ef |grep -i 15702
   root     15702 15690  0 18:35 ?        00:00:00 httpd -DFOREGROUND
   bin      15729 15702  0 18:35 ?        00:00:00 httpd -DFOREGROUND
   bin      15730 15702  0 18:35 ?        00:00:00 httpd -DFOREGROUND
   bin      15731 15702  0 18:35 ?        00:00:00 httpd -DFOREGROUND
   root     15993 15957  0 18:59 pts/0    00:00:00 grep --color=auto -i 15702

在第一個(gè)輸出中,列出了容器產(chǎn)生的進(jìn)程的列表。它包含了所有細(xì)節(jié),包括用戶號(hào)、進(jìn)程號(hào),父進(jìn)程號(hào)、開始時(shí)間、命令,等等。這里所有的進(jìn)程號(hào)你都可以在宿主的進(jìn)程表里搜索到。這就是我們?cè)诘诙€(gè)命令里做得。這證明了容器確實(shí)是宿主系統(tǒng)中的進(jìn)程。

如何停止 Docker 容器?

只需要 stop 命令!同樣,它采用容器名稱或 ID 作為參數(shù)。

   root@kerneltalks # docker container stop cranky_cori
   cranky_cori

如何列出停止的或不活動(dòng)的 Docker 容器?

現(xiàn)在我們停止了我們的容器,這時(shí)如果我們使用 ls 命令,它將不會(huì)出現(xiàn)在列表中。

   root@kerneltalks # docker container ls
   CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

所以,在這種情況下,如果想要查看停止的或不活動(dòng)的容器,你需要在 ls 命令里同時(shí)使用 -a 參數(shù)。

   root@kerneltalks # docker container ls -a
   CONTAINER ID        IMAGE               COMMAND              CREATED             STATUS                     PORTS               NAMES
   c46f2e9e4690        httpd               "httpd-foreground"   33 minutes ago      Exited (0) 2 minutes ago                       cranky_cori

有了 -a 參數(shù),現(xiàn)在我們可以查看已停止的容器。注意這些容器的狀態(tài)被標(biāo)注為 已退出。既然容器只是一個(gè)進(jìn)程,那么用“退出”比“停止”更合適!

如何(重新)啟動(dòng) Docker 容器?

現(xiàn)在,我們來啟動(dòng)這個(gè)已停止的容器。這和運(yùn)行一個(gè)容器有所區(qū)別。當(dāng)你運(yùn)行一個(gè)容器時(shí),你將啟動(dòng)一個(gè)全新的容器。當(dāng)你啟動(dòng)一個(gè)容器時(shí),你將開始一個(gè)已經(jīng)停止并保存了當(dāng)時(shí)運(yùn)行狀態(tài)的容器。它將以停止時(shí)的狀態(tài)重新開始運(yùn)行。

   root@kerneltalks #  docker container start c46f2e9e4690
   c46f2e9e4690
   
   root@kerneltalks # docker container ls -a
   CONTAINER ID        IMAGE               COMMAND              CREATED             STATUS              PORTS                NAMES
   c46f2e9e4690        httpd               "httpd-foreground"   35 minutes ago      Up 8 seconds        0.0.0.0:80->80/tcp   cranky_cori

如何移除 Docker 容器?

我們使用 rm 命令來移除容器。你不可以移除運(yùn)行中的容器。移除之前需要先停止容器。你可以使用 -f 參數(shù)搭配 rm 命令來強(qiáng)制移除容器,但并不推薦這么做。

   root@kerneltalks # docker container rm cranky_cori
   cranky_cori
   root@kerneltalks # docker container ls -a
   CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

本文題目:Docker容器管理基本命令
文章源于:http://uogjgqi.cn/article/cdjdosi.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流