docker 容器的備份與恢復

2021-09-14 03:06:21 字數 2165 閱讀 6034

首先,為了備份docker中的容器,我們可以先檢視我們想要備份的容器列表:

# docker ps

此命令可以檢視所有容器:

# docker ps -a

找到我們需要備份的容器後,需要先建立該容器的快照,執行下面的命令:

# docker commit -p 30b8f18f20b4 graphhopper_backup

其中,-p 後第乙個引數是要備份的容器的id,第二個引數是新的映象名稱。此時,這個新映象就已經儲存下來了,可以執行下面的命令來檢視映象:

# docker images

現在,上面的快照已經作為docker映象儲存了。對於備份該快照,我們有兩個選擇,乙個是我們可以登入進docker註冊中心,並推送該映象到自己的repositories中;另一種選擇是是我們可以將docker映象打包成tar包備份到本地。

我們選擇的操作是將映象儲存在docker註冊中心。我們需要執行 docker login 命令來登入進docker註冊中心,然後推送所需的映象即可。

6. 首先,必須要登入自己的dockerhub 賬號:

# docker login

然後填寫使用者名稱 和 密碼,登入成功。

7. 上傳之前,要先對映象加tag:

# docker tag container-backup peisongli/peisongli:graphhopper_backup

其中,tag後面第乙個引數是映象名稱,第二個引數是新的tag名稱(其中peisongli/peisongli是自己的repositories位址)

8. 加完tag後,執行儲存操作:

# docker push peisongli/peisongli:mongo_backup

9. 等待儲存完成。

成功備份了docker容器後,可以通過docker pull恢復docker容器:

docker pull …

在映象被載入後,我們將用載入的映象去執行docker容器。

# docker run -d -p 27017:27017 mongo_backup

重灌系統後恢復:

# docker volume create portainer_data

# docker run -d -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer

部署完成後,即可登入,第一次登陸時需要設定密碼。管理的庫選擇local。

從自己的dockerhub中pull映象檔案

# docker pull peisongli/peisongli:graphhopper_backup

剛開始,通過下面的命令來部署容器

# docker run -p 8990:8989 --name graphhopper -d peisongli/peisongli:graphhopper_backup

此時,容器一啟動就會自動關閉,無法保持一直開啟的狀態。

退出原因:

1、docker容器執行必須有乙個前台程序, 如果沒有前台程序執行,容器認為空閒,就會自行退出

2、容器執行的命令如果不是那些一直掛起的命令( 執行top,tail、迴圈等),就是會自動退出

3、這個是 docker 的機制問題

解決辦法:

新增-it 引數互動執行

新增-d 引數後台執行

這樣就能啟動乙個一直停留在後台執行的graphhopper了。

# docker run-it-p 8990:8989 --name graphhopper-dpeisongli/peisongli:graphhopper_backup/bin/bash

# cd graphhopper

# ./start.sh

等待一段時間,解析完成,graphhopper伺服器開啟,埠開啟。此時,測試發現,可以成功執行路徑規劃了!!!?

Docker資料卷容器備份 恢復

1 備份資料卷容器 使用資料捲來備份資料,通過指定本地的乙個檔案路徑,對應到容器中的路徑,執行tar命令將重要的檔案打包備份。cd home xm6f dev docker run volumes from db v pwd docker name db6 it my centos v888 bin...

docker映象的備份恢復遷移

為了備份該映象,我們有以下幾個選擇 我們可以將指定映象儲存成 tar 歸檔檔案,需要使用時將 tar 包恢復為映象即可 登入 dockerhub 註冊中心,將映象推送至 dockerhub 倉庫方便使用 搭建私有映象倉庫,將映象推送至私有映象倉庫方便使用。使用 docker s e 將指定映象儲存成...

mysql 備份與恢復 MySQL 備份與恢復

1 檢視資料庫的資料儲存在哪個目錄下 shiyanlou mysql uroot e show variables like datadir variable name value datadir var lib mysql 2 備份資料的方法 select into outfile 檔名 或者 s...