欧美亚洲中文,在线国自产视频,欧洲一区在线观看视频,亚洲综合中文字幕在线观看

      1. <dfn id="rfwes"></dfn>
          <object id="rfwes"></object>
        1. 站長(zhǎng)資訊網(wǎng)
          最全最豐富的資訊網(wǎng)站

          完全掌握Docker學(xué)習(xí)之容器的使用

          本篇文章給大家?guī)?lái)了關(guān)于docker中容器的使用,希望對(duì)大家有幫助。

          完全掌握Docker學(xué)習(xí)之容器的使用

          運(yùn)行一個(gè)容器

          如果想要找到一個(gè)現(xiàn)有的鏡像,可以在公開(kāi)的 Docker Hub 上搜索,這里可以找到它的介紹和用法,就像在 GitHub 上找一個(gè)開(kāi)源項(xiàng)目一樣。

          完全掌握Docker學(xué)習(xí)之容器的使用

          如果你是第一次使用 Docker Hub,可以先注冊(cè)一個(gè)賬號(hào),在最頂上的搜索框里輸入 ubuntu ,找到的第一個(gè)結(jié)果就是官方的 ubuntu 鏡像,點(diǎn)開(kāi)可以看到上圖的頁(yè)面。

          這個(gè)頁(yè)面上有鏡像的一些基本信息和用法介紹,右邊的 docker pull ubuntu 命令用來(lái)在本地拉取鏡像。在上一篇已經(jīng)說(shuō)過(guò),當(dāng)我們實(shí)例化一個(gè)容器時(shí),如果 Docker 在本地找不到指定的鏡像,它會(huì)自動(dòng)進(jìn)行拉取,因此,我們可以直接在本地運(yùn)行:

          docker run -i -t ubuntu /bin/bash

          這個(gè)命令比上次的示例多了一些參數(shù),下面解釋一下:

          • -i 可以保證容器中開(kāi)啟 STDIN

          • -t 會(huì)為容器分配一個(gè)偽 TTY 終端

          • ubuntu 是鏡像的名稱,相當(dāng)于上個(gè)示例中的 hello-world

          • /bin/bash 是啟動(dòng)后要在容器中執(zhí)行的命令

          其中 -i 和 -t 兩個(gè)參數(shù)可以使容器運(yùn)行起來(lái)之后,我們可以與之交互。當(dāng)容器創(chuàng)建完成,Docker 就會(huì)執(zhí)行容器中的 /bin/bash 命令,因此,容器運(yùn)行后我們的終端會(huì)附著到容器上:

          完全掌握Docker學(xué)習(xí)之容器的使用

          此時(shí),你可以在開(kāi)啟一個(gè)終端,輸入 docker ps 命令,查看已經(jīng)啟動(dòng)的容器,得到的結(jié)果如下:

          CONTAINER ID   IMAGE     COMMAND       CREATED       STATUS       PORTS     NAMES 402c5d3468d7   ubuntu    "/bin/bash"   4 hours ago   Up 4 hours             reverent_wu

          這里展示了容器的 ID、鏡像、最后執(zhí)行的命令、創(chuàng)建時(shí)間、狀態(tài)、名稱。這里的名稱 reverent_wu 是 Docker 自動(dòng)生成的,如果需要在創(chuàng)建容器時(shí)指定名稱,可以使用 –name 來(lái)給容器命名。

          深入容器內(nèi)部

          當(dāng)前的狀態(tài)下,我們可以在附著到容器的終端執(zhí)行任何 ubuntu 系統(tǒng)下支持的命令。比如,輸入 hostname 命令,發(fā)現(xiàn)容器的 hostname 就是它的容器 ID。

          接著,可以看一下 /etc/hosts 文件:

          root@402c5d3468d7:/# cat /etc/hosts 127.0.0.1        localhost ::1        localhost ip6-localhost ip6-loopback fe00::0        ip6-localnet ff00::0        ip6-mcastprefix ff02::1        ip6-allnodes ff02::2        ip6-allrouters 172.17.0.2        402c5d3468d7

          你也可以自己嘗試在容器中查看進(jìn)程,甚至使用 apt-get 安裝軟件包。

          最后,可以輸入 exit 命令,推出容器,返回宿主機(jī)的命令提示符。注意,此時(shí)再執(zhí)行 docker ps 時(shí)發(fā)現(xiàn),容器的列表中,已經(jīng)沒(méi)有剛剛創(chuàng)建的 ubuntu 容器了。

          CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

          當(dāng)我們退出的時(shí)候,容器就停止運(yùn)行了。不過(guò),容器并沒(méi)有被刪除,可以通過(guò) docker ps -a 命令,查看所有創(chuàng)建的容器,無(wú)論容器啟動(dòng)與否:

          CONTAINER ID   IMAGE     COMMAND       CREATED       STATUS                     PORTS     NAMES 402c5d3468d7   ubuntu    "/bin/bash"   4 hours ago   Exited (0) 2 minutes ago             reverent_wu

          這時(shí),它的狀態(tài)變成了 Exited (0) 2 minutes ago ,表示它在 2 分鐘之前推出,退出的狀態(tài)碼是 0,表示正常退出。

          我們可以通過(guò)一下的命令重新啟動(dòng)這個(gè)容器:

          docker start 402c5d3468d7

          這個(gè)命令中,docker start 后面跟的是容器的 ID,也可以使用容器的名稱。執(zhí)行成功后,再通過(guò) docker ps 命令即可看到容器處于啟動(dòng)狀態(tài),通過(guò) docker start 命令讓容器重新啟動(dòng)后,會(huì)沿用 docker run 命令指定的參數(shù),也就是啟動(dòng)后會(huì)運(yùn)行 /bin/bash 啟動(dòng)一個(gè) shell,但是我們并沒(méi)有進(jìn)入到容器的命令行當(dāng)中。可以通過(guò) docker attach 命令再次進(jìn)入:

          docker attach 402c5d3468d7

          此時(shí),就可以繼續(xù)在容器中執(zhí)行命令。

          如果一個(gè)容器不再使用了,可以使用 docker rm 命令將它刪除。

          docker rm 402c5d3468d7

          提供持續(xù)的服務(wù)

          贊(0)
          分享到: 更多 (0)
          網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)