docker容器跨服務器的遷移的方法
docker的備份方式有export和save兩種。
export是當前的狀態(tài),針對的是容器,docker save 是針對鏡像images。
export
找出要備份容器的ID
[root@wls12c ~]$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS NAMES 037b847bf093 centos "/bin/bash" 3 minutes ago Exited (0) 2 minute naughty_davinci
備份
[root@wls12c ~]$ docker export 037b847bf093 >centos_demo.tar [root@wls12c ~]$ du -sh centos_demo.tar 195M centos_demo.tar
export是把容器打成一個tar包。
恢復
把剛才備份的centos_demo.tar打包到目標服務器
[root@11g ~]$ cat centos_demo.tar |docker import - centos:demo 8962416d1362f289ceb9848e21a95f03dc34eb6f234c8f98f1a6e1ec7fe34a67
查看新生成的鏡像
[root@11g ~]$ docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE centos demo 8962416d1362 24 seconds ago 196.7 MB
save
得到鏡像名稱
[root@wls12c ~]$ docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE centos latest d83a55af4e75 3 weeks ago 196.7 MB
備份鏡像
[root@wls12c ~]$ docker save centos >centos_save.tar
恢復鏡像
[root@11g ~]$ docker load <centos_save.tar
查看恢復的鏡像
[root@wls12c ~]$ docker images REPOSITORY TAG IMAGE ID CREATED centos latest d83a55af4e75 3 weeks ago 196.7 MB
兩者的區(qū)別:
導出后再導入(exported-imported)的鏡像會丟失所有的歷史,而保存后再加載(saveed-loaded)的鏡像沒有丟失歷史和層 (layer)。這意味著使用導出后再導入的方式,你將無法回滾到之前的層(layer),同時,使用保存后再加載的方式持久化整個鏡像,就可以做到層回 滾(可以執(zhí)行docker tag <LAYER ID> <IMAGE NAME>來回滾之前的層)。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
使用Dockerfile實現(xiàn)容器內部服務隨容器自啟動的方法
這篇文章主要介紹了使用Dockerfile實現(xiàn)容器內部服務隨容器自啟動,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-06-06
docker的WARNING:bridge-nf-call-iptables is disabled
這篇文章主要介紹了docker的WARNING:bridge-nf-call-iptables is disabled的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-02-02
Docker+keepalived+nginx實現(xiàn)主從熱備的方法示例
這篇文章主要介紹了Docker+keepalived+nginx實現(xiàn)主從熱備的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-11-11
在云服務器上基于docker安裝jenkins的實現(xiàn)步驟
本文主要介紹了在云服務器上基于docker安裝jenkins的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-07-07
基于Docker實現(xiàn)Redis主從+哨兵搭建的示例實踐
本文主要介紹了基于Docker實現(xiàn)Redis主從+哨兵搭建的示例實踐,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01

