久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      docker鏡像應(yīng)該遵循哪些原則

      docker鏡像應(yīng)該遵循的原則:1、鏡像最小化原則;需要選擇最精簡的基礎(chǔ)鏡像、清理鏡像構(gòu)建的中間產(chǎn)物、減少鏡像的層數(shù)。2、構(gòu)建速度最快化原則;充分利用鏡像構(gòu)建緩存,再利用構(gòu)建的緩存來加快鏡像構(gòu)建速度。3、注意優(yōu)化網(wǎng)絡(luò)請求。

      docker鏡像應(yīng)該遵循哪些原則

      本教程操作環(huán)境:linux5.9.8系統(tǒng)、docker-1.13.1版、Dell G3電腦。

      1.為什么要做鏡像優(yōu)化?

      隨著我們對docker鏡像的持續(xù)使用,在此過程中如果不加以注意并且優(yōu)化,鏡像的體積會越來越大
      很多時候我們在使用docker部署應(yīng)用時,會發(fā)現(xiàn)鏡像的體積至少有1G以上
      鏡像體積的增大,不單單會增加磁盤資源與網(wǎng)絡(luò)資源的開銷,也會影響應(yīng)用的部署效率,使得應(yīng)用的部署時間會越來越長
      因此我們需要減少部署鏡像的體積以加快部署效率,降低資源的開銷
      而對于鏡像的優(yōu)化,可以通過對dockerfile的優(yōu)化來實現(xiàn)

      2.構(gòu)建鏡像的幾個原則

      (1)鏡像最小化原則

      選擇最精簡的基礎(chǔ)鏡像

      選擇體積最小的基礎(chǔ)鏡像可有效降低鏡像體積。如:alpine、busybox等.

      清理鏡像構(gòu)建的中間產(chǎn)物

      構(gòu)建鏡像的過程中,當(dāng)dockerfile的指令執(zhí)行完成后,刪除鏡像不需要用的的文件。

      如使用yum安裝組件,最后可使用yum clean all鏡像清理不需要的文件或者使用系統(tǒng)rm命令刪除不需要的源文件等。

      減少鏡像的層數(shù)

      鏡像是一個分層存儲的文件,并且鏡像對層數(shù)也是有一定數(shù)量的限制,當(dāng)前鏡像的層數(shù)最高是127層,

      如果不多加注意,將會導(dǎo)致鏡像越來越臃腫。

      在使用dockerfile構(gòu)建鏡像時,dockerfile中的每一條指令都會生成一個層,

      因此可以通過合并dockerfile中可合并的指令,減少最終生成鏡像的層數(shù)。

      例如:在dockerfile中使用RUN執(zhí)行shell命令是,可以用"&&"將多條命令連接起來

      采用最最基礎(chǔ)的鏡像,

      鏡像越小越精簡

      (2)構(gòu)建速度最快化原則

      充分利用鏡像構(gòu)建緩存

      我們可以利用構(gòu)建的緩存來加快鏡像構(gòu)建速度,Docker構(gòu)建默認(rèn)會開啟緩存,緩存生效有三個關(guān)鍵點,

      鏡像父層沒有發(fā)生變化,構(gòu)建指令不變,添加文件校驗和一致。

      只要一個構(gòu)建指令滿足這三個條件,這一層鏡像構(gòu)建就不會再執(zhí)行,它會直接利用之前構(gòu)建的結(jié)果。

      某一層的鏡像緩存失效之后,它之后的鏡像層緩存都會失效。

      我們應(yīng)該把變化最少的部分放在Dockerfile的前面,這樣可以充分利用鏡像緩存。

      dockerfile中有可能導(dǎo)致緩存失效的命令WORKDIR、CMD、ENV、ADD等,

      像這些命令最好放到dockerfile底部,以便在構(gòu)建鏡像過程中最大限度使用緩存。

      刪除構(gòu)建目錄中(默認(rèn):Dockerfile所在目錄)不需要用的的文件

      編寫.dockerignore文件過濾構(gòu)建過程中不必要的文件或者創(chuàng)建單獨的目錄,并且目錄中僅存在鏡像構(gòu)建過程中需要使用的文件。

      Docker 在運行時分為 Docker 引擎(也就是服務(wù)端守護進程)和客戶端工具。

      Docker 的引擎提供了一組 REST API,被稱為 Docker Remote API,

      而如 docker 命令這樣的客戶端工具,則是通過這組 API 與 Docker 引擎交互,從而完成各種功能。

      因此,雖然表面上我們好像是在本機執(zhí)行各種 docker 功能,但實際上,一切都是使用的遠(yuǎn)程調(diào)用形式在服務(wù)端(Docker 引擎)完成。docker build 命令構(gòu)建鏡像,其實并非在本地構(gòu)建,而是在服務(wù)端,也就是 Docker 引擎中構(gòu)建的。

      構(gòu)建鏡像時,Docker需要先準(zhǔn)備context ,將所有需要的文件收集到進程中。

      默認(rèn)的context包含Dockerfile目錄中的所有文件。

      (3)注意優(yōu)化網(wǎng)絡(luò)請求

      我們使用一些鏡像源或者在dockerfile中使用互聯(lián)網(wǎng)上的url時,

      去用一些網(wǎng)絡(luò)比較好的開源站點,這樣可以節(jié)約時間、減少失敗率。

      3.在虛擬機模擬源碼編譯nginx

      選擇最精簡的基礎(chǔ)鏡像 減少鏡像的層數(shù) 清理鏡像構(gòu)建的中間產(chǎn)物 注意優(yōu)化網(wǎng)絡(luò)請求 盡量去用構(gòu)建緩存

      啟動docker

      docker鏡像應(yīng)該遵循哪些原則
      查看鏡像并刪除無用的鏡像
      docker鏡像應(yīng)該遵循哪些原則

      docker鏡像應(yīng)該遵循哪些原則

      docker鏡像應(yīng)該遵循哪些原則
      先源碼編譯nginx,熟悉步驟后好在容器中運行nginx

      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則

      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      關(guān)閉debug
      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則

      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      查看執(zhí)行命令
      docker鏡像應(yīng)該遵循哪些原則

      4.鏡像的優(yōu)化

      階段構(gòu)建鏡像接下來我們以rhel7鏡像構(gòu)建容器,并在容器中安裝nginx的源碼包。以此容器構(gòu)建新的鏡像并做做優(yōu)
      (1)在真機上面給server1傳兩個包

      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則

      docker鏡像應(yīng)該遵循哪些原則

      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      優(yōu)化思路:將RUN都放在一行,減少鏡像層數(shù)
      編寫Dockerfile如下

      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則

      docker鏡像應(yīng)該遵循哪些原則
      優(yōu)化思路:使用多階段構(gòu)建

      Dokcerfile如下:
      先模擬命令行關(guān)閉debug:
      docker鏡像應(yīng)該遵循哪些原則

      docker鏡像應(yīng)該遵循哪些原則

      docker鏡像應(yīng)該遵循哪些原則
      優(yōu)化思路:從底層優(yōu)化

      首先我們需要導(dǎo)入一個distroless和nginx鏡像 distroless”鏡像只包含應(yīng)用程序及其運行時依賴項,不包含程序包管理器、shell以及在標(biāo)準(zhǔn)Linux發(fā)行版中可以找到的任何其他程序 用distroless去除容器中所有不必要的東西

      1)從github網(wǎng)站查看例子:
      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      (2)從真機給server1發(fā)送東西
      docker鏡像應(yīng)該遵循哪些原則
      (3)導(dǎo)入鏡像

      docker鏡像應(yīng)該遵循哪些原則

      (4)編寫Dockerfile如下
      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      (5)構(gòu)建鏡像并查看鏡像大小

      docker鏡像應(yīng)該遵循哪些原則
      (6)構(gòu)建容器并測試
      docker鏡像應(yīng)該遵循哪些原則
      查看IP并能正常訪問到Nginx默認(rèn)發(fā)布頁,證明容器鏡像可以正常使用,但只要內(nèi)網(wǎng)可以訪問:

      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      按照查看橋接的工具:
      docker鏡像應(yīng)該遵循哪些原則
      docker鏡像應(yīng)該遵循哪些原則
      查看橋接:
      docker鏡像應(yīng)該遵循哪些原則
      做端口映射docker鏡像應(yīng)該遵循哪些原則
      可以通過外網(wǎng)訪問了:
      docker鏡像應(yīng)該遵循哪些原則

      推薦學(xué)習(xí):《docker視頻教程》

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