docker 映象重新命名_Docker使用技巧:你會正確匯出Docker映象?
阿新 • • 發佈:2021-01-29
技術標籤:docker 映象重新命名
工作中我們會常常遇到在沒有映象倉庫中心的時候,需要將容器放到到另外一個主機上,此時,我們就需要將映象匯出,今天我們就介紹下docker的匯出(docker export & docker save)和匯入(docker import & docker load)的命令。
docker export & docker import
使用docker export 命令匯出的檔案相當於是容器的快照,並不儲存映象的層歷史和元資料資訊,目標型別是容器檔案系統,檔案匯出為TAR檔案,該檔案只是包含了組成容器狀態的檔案,而且,正在執行中的狀態不會被儲存.
比如,現在需要匯出主機上的nginx映象:
docker export -o nginx.tar nginx:myversion #等價於 docker export nginx:myversion > nginx.tar
匯入:
#如果不指定對應的nginx:myversion版本和標籤資訊,匯入之後REPOSITORY和TAG會顯示為docker import nginx.tar nginx:myversion
docker save & docker load
docker save 則是可以保留映象的層歷史和元資料資訊,相應的,匯出的映象檔案TAR也會比較大。
使用docker save匯出的映象檔案,也可以使用docker import匯入,對應的,匯入之後將會丟棄容器的歷史和元資料資訊。如果要保留映象的歷史,可以使用load而不是import,這樣其歷史也會在另一邊的docker守護程序上得到保留。
匯出
docker save -o nginx.tar nginx:myversion#等價於docker save -o nginx:myversion > nginx.tar
匯入,不指定版本TAG資訊,在匯入之後也會顯示nginx的版本資訊。
docker load -i nginx.tar #等價於docker load < nginx.tar