Docker容器中的備份、恢復、遷移、導入、導出

Docker 是一個開源的應用容器引擎,基於 Go 語言 並遵從 Apache2.0 協議開源;跨平臺應用容器引擎服務。

實驗環境

操作系統:Ubuntu 18.04.4 LTS

應用版本:Docker version 19.03.9, build 9d988398e7

鏡像舉例:mysql:5.6

注意:必須要先安裝Docker容器,參考:https://www.linuxprobe.com/ubuntu-install-docker-ce

Docker打包應用以及依賴包到一個輕量級、可移植的容器中,然後發佈到任何流行的Linux機器上,也可以實現虛擬化,Docker是跨平臺的容器引擎,支持Windows、MAC OS、Linux等。

Docker容器中的備份、恢復、遷移、導入、導出Docker容器中的備份、恢復、遷移、導入、導出

容器是完全使用沙箱機制,相互之間不會有任何接口,實現了資源隔離技術,容器內的資源互不影響,更重要的是容器性能開銷極低。

Docker容器中的備份、恢復、遷移、導入、導出Docker容器中的備份、恢復、遷移、導入、導出

Docker鏡像拉取

root@linuxcool:~# docker pull mysql:5.6
5.6: Pulling from library/mysql
e62d08fa1eb1: Pull complete 
c4539e638b12: Pull complete 
0acb8f0db2a3: Pull complete 
e27254901ad3: Pull complete 
91e4d538a032: Pull complete 
8608c48c2d69: Pull complete 
2b7bbeb5e044: Pull complete 
f86c472cfc00: Pull complete 
3081c249e0ee: Pull complete 
caddb3474aca: Pull complete 
ec101f8c3a86: Pull complete 
Digest: sha256:60c27b50ca72d81d92a743a965a82f124a4e123c7d374a021887286408878d60
Status: Downloaded newer image for mysql:5.6
docker.io/library/mysql:5.6

Docker容器備份

root@linuxcool:~# docker image save mysql:5.6 -o mysql:5.6.tar.gz
mysql:5.6:本地鏡像
mysql:5.6.tar.gz:打包後的鏡像文件

Docker容器導出

root@linuxcool:~# docker save mysql:5.6 > mysql:5.6.tar.gz
mysql:5.6:本地鏡像
mysql:5.6.tar.gz:打包後的鏡像文件

Docker容器恢復

root@linuxcool:~# docker image load -i mysql:5.6.tar.gz
mysql:5.6.tar.gz:打包後的鏡像文件

Docker容器導入

root@linuxcool:~# docker image load < mysql:5.6.tar.gz
Loaded image: mysql:5.6
mysql:5.6.tar.gz:打包後的鏡像文件

Docker容器遷移

Docker容器遷移其實就是把現有的已經在運行Docker容器的服務器遷移到新的容器中,我們可以通過上面備份、恢復、導入、導出操作來完成遷移;如果企業鏡像比較多的情況下,也可以配置私有倉庫,通過私有倉庫去拉取要遷移同步的鏡像資源,再運行拉取的鏡像,這樣也可以完成容器遷移過程;後續繼續發佈私有倉庫harbor的安裝及配置,這樣可以把業務中的鏡像全部推送到私有倉庫中,提高工作效率。

本文原創地址:https://www.linuxprobe.com/docker-save-load.html

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章