備份和恢復Ubuntu Docker容器可以通過多種方法實現,以下是詳細的步驟:
使用數據卷容器備份數據:
docker run
命令創建一個臨時容器,掛載數據卷容器,并將數據卷備份為壓縮文件。# 創建數據卷容器
sudo docker run -d -v /dbdata --name dbdata ubuntu /bin/bash
# 備份數據卷
sudo docker run --rm --volumes-from dbdata -v $(pwd):/backup ubuntu tar cvf /backup/backup.tar /dbdata
使用Docker鏡像備份:
docker commit
將運行的容器轉換為鏡像。docker save
將鏡像保存為壓縮文件。# 提交容器為鏡像
docker commit mycontainer myimage
# 保存鏡像為文件
docker save -o myimage.tar myimage
恢復數據卷容器:
# 創建新的數據卷容器
sudo docker run -v /dbdata --name dbdata2 ubuntu /bin/bash
# 恢復數據卷
sudo docker run --rm --volumes-from dbdata2 -v $(pwd):/backup busybox tar xvf /backup/backup.tar -C /dbdata
# 在其他容器中掛載新的數據卷容器
sudo docker run -d --volumes-from dbdata2 --name db1 training/postgres
恢復Docker鏡像:
docker load
將保存的鏡像文件導入到本地。docker run
命令從導入的鏡像創建新的容器。# 導入鏡像
docker load -i myimage.tar
# 使用導入的鏡像創建新容器
sudo docker run -d --name mynewcontainer myimage
通過上述方法,可以有效地備份和恢復Ubuntu Docker容器中的數據。選擇哪種方法取決于具體的需求和場景。