溫馨提示×

CentOS Docker如何備份與恢復

小樊
62
2025-03-31 15:17:27
欄目: 智能運維

在CentOS系統上使用Docker進行數據備份與恢復,可以采用以下幾種方法:

使用mongodumpmongorestore備份與恢復MongoDB數據庫

  1. 備份
  • 進入容器:dockerexec -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 容器名:/dump/test.tar.gz /mnt/docker-data/mongo/dump
  1. 恢復
  • 將文件復制至容器內:docker cp /mnt/docker-data/mongo/dump/test.tar.gz mongo:/dump
  • 進入容器:dockerexec -it mongo /bin/bash
  • 進入備份文件夾:cd /dump
  • 解壓備份文件至當前文件夾:tar -xzvf /dump/test.tar.gz
  • 執行數據還原命令:mongorestore -h 127.0.0.1:27017 -d 數據庫名稱 --dir /dump -u 用戶 -p 密碼

使用Docker數據卷容器備份與恢復

  1. 備份
  • 創建一個帶有數據卷的容器用于備份:docker run --name data-volume -itd --volumes-from [container name] centos /bin/bash
  • 在容器內創建備份文件,例如:touch lucky.txt
  • 退出容器并備份數據卷:docker cp data-volume:/lucky.txt /backup
  1. 恢復
  • 創建一個新的容器掛載需要恢復的數據卷: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
  • 編寫備份腳本:echo '#!/bin/bash tar cvf /backup/backup.tar /path/to/backup' > /path/to/backup.sh
  • 設置腳本為可執行:chmod +x /path/to/backup.sh
  • 設置定時任務:crontab -e 添加定時任務
  1. 恢復
  • 解壓備份文件并將其復制回原始位置:tar xvf /backup/backup.tar -C /path/to/restore

請注意,備份與恢復操作需要具有相應的權限,建議在操作前確認當前用戶具有執行這些操作的權限。此外,對于數據庫的備份與恢復,建議在低峰時段進行,以減少對業務的影響。在實際操作中,還應該考慮備份數據的存儲安全和備份的驗證機制,確保備份數據的完整性和可用性。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女