CentOS Docker如何備份與恢復

centos系統下docker數據備份與恢復方法詳解

本文介紹幾種在centos系統中利用docker進行數據備份和恢復的實用方法,涵蓋mongodb數據庫和文件/目錄的備份與恢復。 所有操作前請確保擁有相應權限,并建議在業務低峰期進行操作,以最大限度地減少對系統的影響。

方法一:使用mongodump和mongorestore備份與恢復MongoDB數據庫

此方法適用于MongoDB數據庫的備份與恢復。

  1. 備份:

    • 進入MongoDB容器:docker exec -it mongo /bin/bash
    • 執行備份命令:mongodump -h 127.0.0.1:27017 -u -p -d -o /dump (請替換、和為您的實際值)
    • 壓縮備份文件:tar -zcvf test.tar.gz /dump
    • 退出容器:exit
    • 將備份文件復制到宿主機:docker cp mongo:/dump/test.tar.gz /mnt/docker-data/mongo/dump (請確保/mnt/docker-data/mongo/dump目錄存在)
  2. 恢復:

    • 將備份文件復制到容器:docker cp /mnt/docker-data/mongo/dump/test.tar.gz mongo:/dump
    • 進入容器:docker exec -it mongo /bin/bash
    • 進入備份目錄:cd /dump
    • 解壓備份文件:tar -xzvf test.tar.gz
    • 執行恢復命令:mongorestore -h 127.0.0.1:27017 -d –dir /dump -u -p (請替換、和為您的實際值)

方法二:使用Docker數據卷容器備份與恢復

此方法適用于備份和恢復Docker容器中的數據卷。

  1. 備份:

    • 創建數據卷容器:docker run –name data-volume -itd –volumes-from centos /bin/bash (請替換為您的容器名稱)
    • 在容器內創建備份文件(例如:touch lucky.txt)。 這只是示例,實際操作中需要根據您的數據進行調整。
    • 退出容器并復制備份文件到宿主機:docker cp data-volume:/lucky.txt /backup (請確保/backup目錄存在)
  2. 恢復:

    • 創建新的容器并掛載數據卷:docker run –name restore-container –volumes-from data-volume -itd centos /bin/bash
    • 將備份文件復制到容器:docker cp /backup/lucky.txt restore-container:/lucky.txt

方法三:使用tar命令備份與恢復文件或目錄

此方法適用于備份和恢復文件或目錄。

  1. 備份:

    • 創建備份目錄:sudo mkdir /backup

    • 創建備份腳本(例如/path/to/backup.sh):

      #!/bin/bash tar cvf /backup/backup.tar /path/to/backup
    • 設置腳本為可執行:chmod +x /path/to/backup.sh

    • 使用crontab設置定時任務(編輯/etc/crontab或使用crontab -e): 這部分需要根據您的需求設置定時任務。

  2. 恢復:

    • 解壓備份文件到指定位置:tar xvf /backup/backup.tar -C /path/to/restore

重要提示: 以上所有方法都需要替換占位符為您的實際值。 請務必仔細檢查命令和路徑,避免數據丟失。 此外,建議定期測試備份和恢復流程,確保其有效性。 為了數據安全,請考慮將備份數據存儲到安全的外部存儲設備或云存儲服務中。

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享