close

現場(環境): CentOS 7.4    套件:Docker

 


原因:

很多時候大家都希望能夠將自己處理的很辛苦的Docker Container匯出。

可是不知道該怎麼做比較好?

網路上最常聽到的匯出方式就是save & export

這兩種有什麼差別?

 

 


處理方式:

 

看到save/export 的說明。可以看到字面上的意思。

save :Save an image to a tar archive.

export: Stream the contents of a container as a tar archive.

 


save指的是將本機上原生的Docker Image匯出,

也就是當初你拉回來的最原始的Container環境。

 


export是針對你現在設定過後的Container環境做匯出。

*前提會建議這個Container沒有掛載外部資料夾的狀況下進行。

 


Save:

這個部份比較常用再無法連接外網的主機上。

或者是連線比較慢的網路環境。

這時候到已經下載過這個Container的主機上執行save 指令。

 

#docker save [Image名稱:Tag] > [你要匯出的名稱].tar

這樣就將這台機器上的MariaDB Image匯出一個mariaO.tar的檔案。

 

復原的方式:

在要匯入的主機使用 load 進行匯入。

範例:docker load < [匯出Imagetar]

 

#docker load < mariaO.tar

這時候查詢這台主機的Image資訊。就可以看到他的存在。

接著就是使用這個Image啟動Container而已。

 


Export :

打包我現在所操作過的環境,移植到其他主機或者給別人用。

#docker export [Container的名字] > [你要匯出的名稱].tar

#docker export maria01 > Mariadb.tar

 

還原方法:

#docker import – [定義名稱/TAG] < [匯出的名稱].tar

匯入後他會以Image的方式存在~

之後就一樣用docker run的方法產生一個新的Container出來。

Save不一樣的是,這邊就包含了你剛剛的所有設定狀況。

 

<全篇完>

 


參考網址:

https://blog.hinablue.me/docker-bi-jiao-save-export-dui-yu-ying-xiang-dang-cao-zuo-chai-yi/

http://www.ichiayi.com/wiki/tech/docker/howto/backup

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 IT001 的頭像
    IT001

    IT001

    IT001 發表在 痞客邦 留言(0) 人氣()