資料備份與恢復
阿新 • • 發佈:2020-08-18
資料的備份操作很容易,執行如下命令:
docker run --volumes-from mydata --name backupcontainer -v $(pwd):/backup/ ubuntu
tar cvf /backup/backup.tar /usr/share/nginx/html/
命令解釋:
- 首先使用--volumes-from連線待備份容器。
- -v引數用來將當前目錄掛載到容器的/backup目錄下。
- 接下來,將容器中/usr/share/nginx/html目錄下的內容備份到/backup目錄下的backup.tar檔案中,由於
已經設定將當前目錄對映到容器的/backup目錄,因為備份在容器/backup目錄下的壓縮檔案在當前目錄
下可以立馬看到。
執行結果如下:
恢復
建立容器
首先建立一個容器,這個容器就是要使用恢復的資料的容器,我這裡建立一個nginx容器,如下:
docker run -itd -p 80:80 -v /usr/share/nginx/html/ --name nginx3 nginx
建立一個名為nginx3的容器,並且掛載一個數據卷。
恢復
資料恢復需要一個臨時容器,如下:
docker run --volumes-from nginx3 -v $(pwd):/backup nginx tar xvf
/backup/backup.tar
命令解釋:
- 首先還是使用--volumes-from引數連線上備份容器,即第一步創建出來的nginx3。
- 然後將當前目錄對映到容器的/backup目錄下。
- 然後執行解壓操作,將backup.tar檔案解壓。解壓檔案位置描述是一個容器內的地址,但是該地址已經映
射到宿主機中的當前目錄了,因此這裡要解壓縮的檔案實際上就是宿主機當前目錄下的檔案。