kubernetes - 關於docker映像使用docker save指令打包出來的檔案的完整性
天蓬老师
天蓬老师 2017-04-25 09:03:12
0
2
819

需求:現在碰到一個需求,需要定期輪休某個目錄,將其中的.tar檔使用docker load指令載入鏡像

問題1:顯然.tar檔案要是使用 docker save 映像名:版本 > abc.tar 這種形式打包出來的,才能被成功load回去。那麼該如何檢測.tar檔案是否格式正確,且鏡像內容完整。這樣就能夠將那些非docker save出來的檔案刪除。

問題2:目錄是需要使用者上傳.tar檔案的。考慮到一些鏡像save出來的.tar檔案很大,那麼上傳的時間會比較多,如何判斷某個.tar檔案正是正在上傳的,這樣就不會將它刪掉了。

不知道我表達清楚沒有,各位大俠有什麼好方法。

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回覆(2)
小葫芦

docker save導出的文件,其實就是一個普通的壓縮文件,這個壓縮文件中包含了鏡像的所有鏡像層,以及包含鏡像基本信息的Manifest文件。在Manifest檔案中,包含了所有鏡像圖層的雜湊值,可以透過這些特徵值來檢查鏡像層檔案是否完整且正確。你完全可以透過檢查Manifest檔案內容以及所有鏡像層檔案來確定鏡像的匯出資料是否正確。

大家讲道理
  1. 不清楚, 官方文件也沒提到校驗的問題 (參考 @有明 的答案)

  2. 有很多方法來確保, 例如說上傳的實際目錄和你工作的目錄分開(上傳到/upload, 完成後再移動到/publish, 你刪除只會刪/publish下面的), 或者在上傳文件之後帶上一個.md5sum校驗文件, 如果.md5sum校驗文件不存在說明文件還沒傳完

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!