参考文档:https://rancher2.docs.rancher.cn/docs/backups/_index
备份脚本
# /bin/bash -e
set -xeuo pipefail
# 备份文件路径
DIR="/home/rancher_bak"
# rancher容器名称
NAME="rancher"
# rancher标签
TAG="v2.4.3"
docker stop ${NAME} \
&& docker create --volumes-from ${NAME} --name rancher-data-`date '+%m-%d'` rancher/rancher:${TAG} \
&& docker run --rm --volumes-from rancher-data-`date '+%m-%d'` -v ${DIR}:/backup:z busybox tar pzcvf /backup/rancher-data-backup-${TAG}-`date '+%m-%d'`.tar.gz /var/lib/rancher \
&& docker rm -f rancher-data-`date '+%m-%d'` \
&& docker start ${NAME}
恢复脚本
# /bin/bash -e
set -xeuo pipefail
# 备份文件名称
FILE="rancher-data-backup-v2.4.3-05-28.tar.gz"
# 备份文件路径
DIR="/home/rancher_bak"
# rancher容器名称
NAME="rancher"
# rancher标签
TAG="v2.4.3"
docker stop ${NAME} \
&& docker run --rm --volumes-from ${NAME} -v ${DIR}:/backup busybox sh -c "rm /var/lib/rancher/* -rf && tar pzxvf /backup/${FILE}"
docker start ${NAME}
注意:
恢复后rancher可能会卡在这里,重启一下rancher容器即可