<track id="p1jc3"><source id="p1jc3"><em id="p1jc3"></em></source></track>
<bdo id="p1jc3"><address id="p1jc3"><dd id="p1jc3"></dd></address></bdo>
<menuitem id="p1jc3"><optgroup id="p1jc3"><dd id="p1jc3"></dd></optgroup></menuitem>

    1. <track id="p1jc3"><div id="p1jc3"></div></track>
        <track id="p1jc3"></track>
      1. <track id="p1jc3"><span id="p1jc3"></span></track>
        <track id="p1jc3"></track>

      2. <track id="p1jc3"><span id="p1jc3"></span></track>

        <menuitem id="p1jc3"></menuitem><menuitem id="p1jc3"></menuitem>

            云狐網

            您現在的位置是:首頁 > IT問答

            IT問答

            Docker容器是什么?Docker鏡像是什么

            云狐科技 2022-12-26 18:23:33IT問答

            Docker 容器是一個開源的應用容器引擎,讓開發者可以以統一的方式打包他們的應用以及依賴包到一個可移植的容器中,然后發布到任何安裝了 docker 引擎的服務器上(包括流行的 Linux 機器、windows 機器),也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何接口(類似 iPhone 的 app)。幾乎沒有性能開銷,可以很容易地在機器和數據中心中運行。最重要的是,他們不依賴于任何語言、框架包括系統。Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            Docker容器是什么?Docker鏡像是什么Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            鏡像(Image)和容器(Container)的關系,就像是面向對象程序設計中的類和實例一樣,鏡像是靜態的定義,容器是鏡像運行時的實體。容器可以被創建、啟動、停止、刪除、暫停等。Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            容器的實質是進程,但與直接在宿主執行的進程不同,容器進程運行于屬于自己的獨立的命名空間(opens new window)。因此容器可以擁有自己的 root 文件系統、自己的網絡配置、自己的進程空間,甚至自己的用戶 ID 空間。容器內的進程是運行在一個隔離的環境里,使用起來,就好像是在一個獨立于宿主的系統下操作一樣。這種特性使得容器封裝的應用比直接在宿主運行更加安全。也因為這種隔離的特性,很多人初學 Docker 時常常會混淆容器和虛擬機。Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            前面講過鏡像使用的是分層存儲,容器也是如此。每一個容器運行時,是以鏡像為基礎層,在其上創建一個當前容器的存儲層,我們可以稱這個為容器運行時讀寫而準備的存儲層為容器存儲層。Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            容器存儲層的生存周期和容器一樣,容器消亡時,容器存儲層也隨之消亡。因此,任何保存于容器存儲層的信息都會隨容器刪除而丟失。Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            按照 Docker 最佳實踐的要求,容器不應該向其存儲層內寫入任何數據,容器存儲層要保持無狀態化。所有的文件寫入操作,都應該使用數據卷(Volume)、或者綁定宿主目錄,在這些位置的讀寫會跳過容器存儲層,直接對宿主(或網絡存儲)發生讀寫,其性能和穩定性更高。Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            數據卷的生存周期獨立于容器,容器消亡,數據卷不會消亡。因此,使用數據卷后,容器刪除或者重新運行之后,數據卻不會丟失。Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            Docker鏡像是什么

            操作系統分為內核和用戶空間。對于 Linux 而言,內核啟動后,會掛載 root 文件系統為其提供用戶空間支持。而 Docker 鏡像(Image),就相當于是一個 root 文件系統。比如官方鏡像 ubuntu:18.04 就包含了完整的一套 Ubuntu 18.04 最小系統的 root 文件系統。Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            Docker容器是什么?Docker鏡像是什么Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            Docker 鏡像 是一個特殊的文件系統,除了提供容器運行時所需的程序、庫、資源、配置等文件外,還包含了一些為運行時準備的一些配置參數(如匿名卷、環境變量、用戶等)。鏡像 不包含 任何動態數據,其內容在構建之后也不會被改變。Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            分層存儲

            因為鏡像包含操作系統完整的 root 文件系統,其體積往往是龐大的,因此在 Docker 設計時,就充分利用 Union FS (opens new window)的技術,將其設計為分層存儲的架構。所以嚴格來說,鏡像并非是像一個 ISO 那樣的打包文件,鏡像只是一個虛擬的概念,其實際體現并非由一個文件組成,而是由一組文件系統組成,或者說,由多層文件系統聯合組成。Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            鏡像構建時,會一層層構建,前一層是后一層的基礎。每一層構建完就不會再發生改變,后一層上的任何改變只發生在自己這一層。比如,刪除前一層文件的操作,實際不是真的刪除前一層的文件,而是僅在當前層標記為該文件已刪除。在最終容器運行的時候,雖然不會看到這個文件,但是實際上該文件會一直跟隨鏡像。因此,在構建鏡像的時候,需要額外小心,每一層盡量只包含該層需要添加的東西,任何額外的東西應該在該層構建結束前清理掉。Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            分層存儲的特征還使得鏡像的復用、定制變的更為容易。甚至可以用之前構建好的鏡像作為基礎層,然后進一步添加新的層,以定制自己所需的內容,構建新的鏡像。Xq8電腦_數碼_手機應用問題解決的IT技術網站 - 云狐網

            <track id="p1jc3"><source id="p1jc3"><em id="p1jc3"></em></source></track>
            <bdo id="p1jc3"><address id="p1jc3"><dd id="p1jc3"></dd></address></bdo>
            <menuitem id="p1jc3"><optgroup id="p1jc3"><dd id="p1jc3"></dd></optgroup></menuitem>

              1. <track id="p1jc3"><div id="p1jc3"></div></track>
                  <track id="p1jc3"></track>
                1. <track id="p1jc3"><span id="p1jc3"></span></track>
                  <track id="p1jc3"></track>

                2. <track id="p1jc3"><span id="p1jc3"></span></track>

                  <menuitem id="p1jc3"></menuitem><menuitem id="p1jc3"></menuitem>

                      阿娇13分49秒无删减版