概述
今天,我們將學習如何快速地對docker容器進行快捷備份、恢復和遷移,Docker是一個開源平臺,用于自動化部署應用,
以通過快捷的途徑在稱之為容器的輕量級軟體層下打包、發布和運行這些應用,它使得應用平臺獨立,因為它扮演了Linux
上一個額外的作業系統級虛擬化的自動化抽象層,它通過其組件cgroups和命名空間利用Linux內核的資源分離特性,
達到避免虛擬機開銷的目的,它使得用于部署和擴展web應用、資料庫和后端服務的大規模構建組件無需依賴于特定的
堆疊或供應者,
所謂的容器,就是那些創建自Docker鏡像的軟體層,它包含了獨立的Linux檔案系統和開箱即用的應用程式,如果我們有
一個在機器中運行著的 Docker容器,并且想要備份這些容器以便今后使用,或者想要遷移這些容器,那么,本教程將幫助
你掌握在Linux作業系統中備份、恢復和遷移 Docker容器的方法,
我們怎樣才能在Linux中備份、恢復和遷移Docker容器呢?這里為您提供了一些便捷的步驟,
正文
1. 查看容器
#輸入命令查看docker中所有容器
#docker ps 查看所有運行中的容器、-a可以列出所有容器包括未運行的
docker ps -a
2. 備份容器
#選擇我們想要備份的容器,然后去創建該容器的快照,我們可以使用 docker commit #命令來創建快照,
#30b8f18f20b4是對應的CONTAINER ID(容器id)
docker commit -p 30b8f18f20b4 container-backup 
#該命令會生成一個作為Docker鏡像的容器快照,我們可以通過運行
#docker images 命令
#來查看Docker鏡像,如下
docker images
#正如我們所看見的,上面做的快照已經作為Docker鏡像保存了,現在,為了備份該
#快照,我們有兩個選擇,一個是我們可以登錄進Docker注冊中心,并推送該鏡像;
#另一個是我們可以將Docker鏡像打包成tar包備份,以供今后使用,
#本次我們將其作為tar包備份,
docker save -o ~/container-backup.tar container-backup
#要驗證tar包是否已經生成,我們只需要在保存tar包的目錄中運行 ls 命令即可,
#一般默認會在root檔案夾下
ls

3. 還原容器
#先停止本來的容器
docker stop gitlab

#查看容器
#如果只使用docker ps的話就看不到這個容器,因為這個容器已經停止運行了,所以
#需要-a才可以看到
docker ps -a
#洗掉剛停止的這個容器
#d9f88c88dab6 就是容器的CONTAINER ID(容器id)
docker rm d9f88c88dab6
#如果不放心可以再查看下容器
#使用 docker load 命令,后面加上tar包的備份路徑,就可以加載該Docker鏡像了,
docker load -i ~/container-backup.tar
#現在,為了確保這些Docker鏡像已經加載成功,我們來運行 docker images 命令,
docker images
#啟動鏡像(一)
#指定埠映射,格式為:主機(宿主)埠:容器埠
docker run -d -p 9443:443 -p 9080:80 -p 2222:22 container-backup
#啟動鏡像(二)
#與備份鏡像啟動命令一致、這樣可以保留鏡像中的資料
docker run -d --hostname 192.168.xx.xxx --restart always -p 9443:443 -p 9080:80 -p 2222:22 --name gitlab -v `pwd`/config:/etc/gitlab -v `pwd`/logs:/var/log/gitlab -v `pwd`/data:/var/opt/gitlab container-backup
本次的學習到這里就結束了,會根據實際使用更新文章,
如果對您有幫助 請點個關注,萬分感謝
(QQ招聘群 710566091
微信招聘群 請加圖圖微信)
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/270532.html
標籤:其他
