1. 程式人生 > 實用技巧 >資料備份與恢復

資料備份與恢復

資料的備份操作很容易,執行如下命令:

docker run --volumes-from mydata --name backupcontainer -v $(pwd):/backup/ ubuntu
tar cvf /backup/backup.tar /usr/share/nginx/html/

命令解釋:

  1. 首先使用--volumes-from連線待備份容器。
  2. -v引數用來將當前目錄掛載到容器的/backup目錄下。
  3. 接下來,將容器中/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

命令解釋:

  1. 首先還是使用--volumes-from引數連線上備份容器,即第一步創建出來的nginx3。
  2. 然後將當前目錄對映到容器的/backup目錄下。
  3. 然後執行解壓操作,將backup.tar檔案解壓。解壓檔案位置描述是一個容器內的地址,但是該地址已經映
    射到宿主機中的當前目錄了,因此這裡要解壓縮的檔案實際上就是宿主機當前目錄下的檔案。