久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么調(diào)整Docker里面的Image大小

152次閱讀
沒有評論

共計 1430 個字符,預(yù)計需要花費 4 分鐘才能閱讀完成。

這篇文章主要介紹了怎么調(diào)整 Docker 里面的 Image 大小,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓丸趣 TV 小編帶著大家一起了解一下。

Docker 給開發(fā)者帶來的最直接好處是,可以打包他們的應(yīng)用,將所有應(yīng)用都捆綁在一個封套中,然后發(fā)布到任何流行的 Linux 機器上。并且,Docker 能實現(xiàn)虛擬化,各種應(yīng)用之間不需要任何接口。也就是,我們常說的“開箱即用”,無需大量安裝或者配置相關(guān)的軟件、硬件等。

而 Docker Image 就是 Docker 鏡像。Docker 鏡像是一個只讀的模板。比如一個鏡像可以包含 Ubuntu 系統(tǒng)以及安裝在 Ubuntu 上的 Apache Web 服務(wù)器和你自己的應(yīng)用。鏡像是用來創(chuàng)建容器的。Docker 提供了一個簡單的方式用以創(chuàng)建新的鏡像或者更新現(xiàn)存的鏡像,甚至你可以下載其他地方提供的鏡像。
由于 Docker 使用一個統(tǒng)一文件系統(tǒng),Docker 鏡像其實就是一堆文件的集合,并不是像 VM 那樣的是一個操作系統(tǒng)。鏡像可以簡單到只有一個程序文件,比如如果你寫了一個簡單的 hello world 程序放到一個空的鏡像中,那么整個鏡像的大小,就是你編譯后的二進制文件的大小。

Docker Image 小是很有好處的,可以不用不浪費自己的 SSD 空間,來處理數(shù)十億字節(jié)的 Docker 數(shù)據(jù)。

有時候,因企業(yè)業(yè)務(wù)規(guī)模化發(fā)展,Docker Image 變得非常大。技術(shù)開發(fā)人員不得不想辦法,調(diào)整 Image 大小。如何不斷優(yōu)化應(yīng)用,最終讓 Image 大小減少到原來的一半?
第一步,Image 分層。使用 Ubuntu 作為基礎(chǔ)鏡像,搭建一個 Java 運行環(huán)境。如果你有相關(guān)應(yīng)用,還要整合第三方的結(jié)果檢查工具。比如:安裝 Mono,通過 NPM 安裝 TSLint 和 ESLint,以便于我們獲得更大的鏡像處理能力。

第二步,核查 BUG。之前,Image 的大小為 1GB 大。然而,在一次常規(guī)的拉取中,技術(shù)人員希望下載的數(shù)據(jù)量與源數(shù)據(jù)大小大相同,因為基本 Image (Ubuntu、Java、…) 還要保持穩(wěn)定。但我的控制臺顯示,出現(xiàn)了異樣:

貌似有數(shù)據(jù)被多次下載。因為這是最后一層,所以這些都是真正的分發(fā)文件。檢查 Dockerfile 后發(fā)現(xiàn),所有目錄都是經(jīng)過編輯的。在傳統(tǒng)的部署設(shè)置中,安全的操作方式是,Docker 必須添加一個新的映鏡像層,并且包含所有分發(fā)文件以及所有權(quán)信息。
在實際的 Docker 構(gòu)建之前,通過調(diào)整所有權(quán)信息,很容易擺脫 chown 調(diào)用,從而讓最終的 Image 節(jié)省了 300MB。

第三步,繼續(xù)刪減字節(jié)。文件產(chǎn)生的大小是 670 MB,這只是開始,還有一定的刪減空間。當 OpenJDK 被用于 Java 運行時,它附帶了一些開發(fā)和 GUI 工具。把沒有用的 OpenJRE 替換掉,可以立即節(jié)省將近 100 MB 的內(nèi)存。然后運行 StyleCop,并從 Mono 中的 .NET PDB 文件中閱讀信息。Mono 已經(jīng)被安裝在 mono-complete 包中,通過強依賴關(guān)系,例如通過一個完整的 MonoDevelop,來實現(xiàn)更多兆字節(jié)的刪減。不管是 ESLint,還是 TSLint,都只是在 NodeJS 運行時才能啟動。

最終,我們把所有應(yīng)用分別添加到 Docker Image 中,圖像大小由 1GB 減少到 480MB。

感謝你能夠認真閱讀完這篇文章,希望丸趣 TV 小編分享的“怎么調(diào)整 Docker 里面的 Image 大小”這篇文章對大家有幫助,同時也希望大家多多支持丸趣 TV,關(guān)注丸趣 TV 行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-08-25發(fā)表,共計1430字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 科技| 蓝山县| 长泰县| 元氏县| 辽宁省| 西充县| 临潭县| 营山县| 盐城市| 南京市| 平罗县| 儋州市| 通榆县| 伊吾县| 邯郸市| 广州市| 平罗县| 望都县| 陆河县| 措美县| 承德市| 镇沅| 龙游县| 蒙阴县| 蕲春县| 阳东县| 桂阳县| 依兰县| 大埔区| 红河县| 韶关市| 成武县| 大宁县| 金湖县| 西和县| 莱州市| 景宁| 诸城市| 吴旗县| 白城市| 综艺|