精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

當前位置:云計算技術專區 → 正文

谷歌開源Docker鏡像分析比對工具container-diff

責任編輯:editor007 作者: Hrishikesh Barua |來源:企業網D1Net  2017-11-30 12:09:15 本文摘自:INFOQ

谷歌發布了一個叫作container-diff的工具,用于分析比對Docker鏡像。它支持文件系統比對,并能夠感知到由apt、npm和pip這些包管理器所帶來的變更。

Dockerfile用于創建容器鏡像,一旦Dockerfile發生變更,就需要重新創建新的鏡像。Dockerfile是普通的文本文件,使用源碼控制系統的diff工具就可以比較出它們之間的區別。不過,要對Dockerfile文件里的命令所產生的鏡像變更記進行可視化,或者列出具體的鏡像變更內容就很困難。應用程序被打包到鏡像之后,如果依賴了第三方特定版本的依賴項,事情就會變得復雜,況且,下游的依賴項也會讓跟蹤變得更加復雜。未被跟蹤的依賴項會導致鏡像體積膨脹,讓鏡像下載時間變長。

container-diff會分析鏡像的“語義”差別,將結果以一種用戶可理解的格式呈現給用戶,這樣用戶就可以采取相應的行動。container-diff支持Python的pip包管理器、Linux上的apt工具以及node.js包管理器npm。另外,它還可以用于分析文件系統的變化。該工具可以一次性分析一個或幾個甚至所有包管理器的內容。

在分析鏡像時,可以指定本地的Docker后臺路徑、遠程的鏡像倉庫地址或文件路徑。如果已經使用Docker的保存命令導出鏡像,那么可以使用后者。在使用該工具分析后臺鏡像時,鏡像不需要處于運行狀態。該工具還能輸出單個鏡像的修改歷史。

其他類似的工具還有Anchore的diff工具以及Atomic項目的“atomic diff”命令。Docker的“docker history”命令只能列出每個Dockerfile的變更歷史,這個只需要檢查一下Dockerfile就知道了。一些反向工程可以揭示底層的一些細節,但很難將其抽取成事件,比如之前安裝了哪些包。Atomic的工具可以列出文件系統的差別,而且可以用在RPM上,也就是說,它可以列出安裝了哪些RPM包。另外,“atomic diff”命令可以用于比較兩個容器、容器和鏡像、兩個鏡像之間的差別。

根據谷歌的文章所述,container-diff可以成為開發流程的一部分,可以與持續集成系統集成起來,提供自動化的變更日志管理,而且它的輸出結果是JSON格式的。如果鏡像處于倉庫當中,不管是私有倉庫還是像Google Container Registry這樣的倉庫,container-diff都為它們提供了認證機制,這個認證機制是通過docker-credentials-helpers包來實現的。這個包使用本地程序(比如OSX上的osxkeychain)來保存Docker認證信息。

查看英文原文:container-diff - an Open Source Tool from Google for Analyzing Differences Between Docker Images

關鍵字:鏡像谷歌container-diff

本文摘自:INFOQ

x 谷歌開源Docker鏡像分析比對工具container-diff 掃一掃
分享本文到朋友圈
當前位置:云計算技術專區 → 正文

谷歌開源Docker鏡像分析比對工具container-diff

責任編輯:editor007 作者: Hrishikesh Barua |來源:企業網D1Net  2017-11-30 12:09:15 本文摘自:INFOQ

谷歌發布了一個叫作container-diff的工具,用于分析比對Docker鏡像。它支持文件系統比對,并能夠感知到由apt、npm和pip這些包管理器所帶來的變更。

Dockerfile用于創建容器鏡像,一旦Dockerfile發生變更,就需要重新創建新的鏡像。Dockerfile是普通的文本文件,使用源碼控制系統的diff工具就可以比較出它們之間的區別。不過,要對Dockerfile文件里的命令所產生的鏡像變更記進行可視化,或者列出具體的鏡像變更內容就很困難。應用程序被打包到鏡像之后,如果依賴了第三方特定版本的依賴項,事情就會變得復雜,況且,下游的依賴項也會讓跟蹤變得更加復雜。未被跟蹤的依賴項會導致鏡像體積膨脹,讓鏡像下載時間變長。

container-diff會分析鏡像的“語義”差別,將結果以一種用戶可理解的格式呈現給用戶,這樣用戶就可以采取相應的行動。container-diff支持Python的pip包管理器、Linux上的apt工具以及node.js包管理器npm。另外,它還可以用于分析文件系統的變化。該工具可以一次性分析一個或幾個甚至所有包管理器的內容。

在分析鏡像時,可以指定本地的Docker后臺路徑、遠程的鏡像倉庫地址或文件路徑。如果已經使用Docker的保存命令導出鏡像,那么可以使用后者。在使用該工具分析后臺鏡像時,鏡像不需要處于運行狀態。該工具還能輸出單個鏡像的修改歷史。

其他類似的工具還有Anchore的diff工具以及Atomic項目的“atomic diff”命令。Docker的“docker history”命令只能列出每個Dockerfile的變更歷史,這個只需要檢查一下Dockerfile就知道了。一些反向工程可以揭示底層的一些細節,但很難將其抽取成事件,比如之前安裝了哪些包。Atomic的工具可以列出文件系統的差別,而且可以用在RPM上,也就是說,它可以列出安裝了哪些RPM包。另外,“atomic diff”命令可以用于比較兩個容器、容器和鏡像、兩個鏡像之間的差別。

根據谷歌的文章所述,container-diff可以成為開發流程的一部分,可以與持續集成系統集成起來,提供自動化的變更日志管理,而且它的輸出結果是JSON格式的。如果鏡像處于倉庫當中,不管是私有倉庫還是像Google Container Registry這樣的倉庫,container-diff都為它們提供了認證機制,這個認證機制是通過docker-credentials-helpers包來實現的。這個包使用本地程序(比如OSX上的osxkeychain)來保存Docker認證信息。

查看英文原文:container-diff - an Open Source Tool from Google for Analyzing Differences Between Docker Images

關鍵字:鏡像谷歌container-diff

本文摘自:INFOQ

電子周刊
回到頂部

關于我們聯系我們版權聲明隱私條款廣告服務友情鏈接投稿中心招賢納士

企業網版權所有 ©2010-2024 京ICP備09108050號-6 京公網安備 11010502049343號

^
  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 天长市| 白朗县| 启东市| 衡山县| 汉寿县| 锦屏县| 崇文区| 连南| 师宗县| 阿巴嘎旗| 通州市| 绿春县| 百色市| 兴城市| 延安市| 平遥县| 邵武市| 贵港市| 南木林县| 鸡东县| 奉新县| 岱山县| 桂平市| 双辽市| 建平县| 大名县| 昭通市| 韶关市| 泗洪县| 秦安县| 襄樊市| 兴宁市| 吴江市| 桑日县| 左权县| 卫辉市| 田林县| 石门县| 乐昌市| 利津县| 金坛市|