docker定義資料捲及資料卷的備份恢復

2022-06-10 11:36:11 字數 3187 閱讀 7568

前言:生產環境中使用docker時,往往需要對資料進行持久化(只有把容器匯出為映象,才能夠儲存寫的資料,否則容器刪除或者停止,所有資料都會沒有),或者需要在多個容器之間進行資料共享,這必然涉及容器的資料管理操作

容器中管理資料主要有兩種方式:

1、資料卷:容器內資料直接對映到本地主機環境

2、資料卷容器:使用特定容器維護資料卷。能在容器和主機、容器和容器之間共享資料,並實現資料的備份和恢復。

本部落格主要圍繞資料卷容器進行開展~~~

一、定義資料卷容器

搭建乙個專門的資料卷容器,然後其他容器直接掛載該資料卷,實現多個容器之間共享資料(類似nfs)

1、docker images 檢視現有的映象

2、用映象 install_net,建立資料卷容器 windysai

docker run -itd -v  /data/docker/  --name  windysai  install_net  bash

(1)-v /data/docker/  :容器裡面

(2)windysai 名字任意

3、進入windysai容器

docker exec -it windysai bash

——》會發現容器裡面多了乙個 /data/docker 的目錄

4、用 centos-6-x86_64 掛載windysai資料卷

docker run -itd--volumes-from windysaicentos-6-x86_64 bash

(1)進去容器:docker exec -it dfdbe7e8b64 bash

發現存在資料卷容器的目錄   /data/docker

(2)測試

mkdir  /data/docker/test;  touch /data/docker/ljy.txt

5、重新進入windysai 容器裡

ls  /data/docker 有 test 目錄和檔案 ljy.txt

、資料卷備份(畫了個圖才比較好理解 = =)

如果做了資料卷(容器內資料直接對映到本地主機環境),那就沒必要做資料卷的備份,只要定時備份伺服器硬碟的資料就行

如果沒有做對映 ——》做資料卷的備份

備份

思路:

使用上面的windysai資料卷新開乙個容器,同時把本地的 /vol_data_backup/ 目錄掛載到該容器的 /backup 下,這樣在容器中 /backup 目錄裡面新建的檔案,就可以直接在/vol_data_backup/目錄中看到了;最後再把 /data/ 目錄下面的檔案打包成 data.tar,放到 /backupx 下面

1、在宿主機的磁碟上,建立要備份資料的目錄

mkdir  /vol_data_backup

2、新建容器,掛在資料卷(共享資料卷 windysai 的/data/docker 目錄)

docker run -itd--volumes-from windysai -v /vol_data_backup/:/backup

centos-6-x86_64bash

(1)centos-6-x86_64:新容器

(2)/backup:對映到容器裡面的目錄

(1)看到 /backup 為空

(2)/data/docker 存在資料卷分享出來的目錄,也就是我們要備份的目錄

(3)備份

4、退出容器exit,檢視宿主機目錄

三、資料卷恢復

思路:先新建乙個資料卷容器,再建乙個新的容器餅掛載該資料卷容器,然後再把 tar 包解包

1、新建第二個資料卷容器

2、掛載資料卷,新建容器

docker run -itd --volumes-from second -v /vol_data_backup/:/backup install_net 

3、進入容器

4、在根目錄下解壓

Docker 資料卷 資料卷容器

一,概念解析 1,資料卷 資料卷就是在宿主中可以在容器之間進行共享和重用的一系列和檔案和資料夾,通過docker run v命令可以將資料卷掛載到對應的容器目錄空間,進行檔案讀取,容器卷特性如下 資料卷可以在容器之間共享和重用,容器間傳遞資料將變得高效方便 對資料卷內資料的修改會立馬生效,無論是容器...

Docker資料卷和資料卷容器

在容器中管理資料主要有兩種方式 資料卷 data volumes 資料卷容器 data volume containers 資料卷 資料卷是乙個可提供乙個或多個容器使用的特殊目錄,它繞過ufs unix檔案系統 可以提供很多有用的特性 資料卷可以在容器之間共享和使用 對資料卷的修改會立馬生效 對資料...

docker 資料卷和資料卷容器

docker 資料管理 在生產環境中使用 docker 往往需要對資料進行持久化,或者需要在多個容器之間進行 資料共享,這必然涉及容器的資料管理操作 容器中的管理資料主要有兩種方式 資料卷 data volumes 容器內資料直接對映到本地主機環境 資料卷容器 data volume contain...