Docker-Backup-Recovery
Backup
1.直接递归压缩整个docker目录
tar -czvf dockerbak.tar.gz /var/lib/docker
等待10分钟
2.查看压缩后的大小
root@:/tmp# ls -al
-rw-r--r-- 1 root root 2315519503 May 20 15:50 dockerbakk.tar.gz
root@:/tmp# du -sh dockerbakk.tar.gz
2.2G dockerbakk.tar.gz
然后传输到另一台server上恢复
Recovery
1.恢复之前先安装docker
apt-get install docker.io docker-compose unzip -y如果遇到报错就使用
apt --fix-broken install -y然后再安装docker
安装完成后,
切记要先关闭docker再恢复,
要不然恢复的全是BUG
后期添加Tips
拿到一台新机器
先下载source.list
curl -o /etc/apt/sources.list http://1.1.1.1:9000/sources.listcd /usr/local/bin/ && curl -L "https://github.com/docker/compose/releases/download/v2.26.1/docker-compose-linux-x86_64" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose && echo 'export PATH=/usr/local/bin:$PATH' >> ~/.bashrc && source ~/.bashrc && cd /opt/docker_arl/ && docker-compose ps2.解压缩
tar -xf dockerbak.tar.gz
会在在当前目录下解压缩出来,里面是/var/lib/docker
然后进入当前解压出来的/var/lib/目录下
mv docker /var/lib/docker
3.检查一下
ls /var/lib/docker
buildkit containers engine-id image network overlay2 plugins runtimes swarm tmp volumes
du -sh /var/lib/docker/
6.1G /var/lib/docker/
6.1G就对了
4.启动docker
systemctl start docker查看docker实例
root@ecs:/var/lib/docker# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8d61d638503b test/ "sh -c 'wait-for-it.…" 3 weeks ago Up 2 days
a0d6928d1587 test/ "sh -c 'gen_crt.sh; …" 3 weeks ago Up 4 days 0.0.0.0:8008->443/tcp, :::8008->443/tcp
51d1e9ac41ee test/ "sh -c 'wait-for-it.…" 3 weeks ago Up 4 days
d0df6be581e6 rabbitmq: "docker-entrypoint.s…" 3 weeks ago Up 4 days
abb152086e2e mongo: "docker-entrypoint.s…" 3 weeks ago Up 4 days
root@ecs:/var/lib/docker# 如果docker实例没出来,那只能删掉/var/lib/docker目录,
重新解压缩dockerbak.tar.gz然后复制到/var/lib/docker目录下。
docker拓展
1. 停止所有运行的容器
docker stop $(docker ps -q)
2. 删除所有容器
docker rm $(docker ps -aq)
3. 删除所有镜像
docker rmi $(docker images -q) -f
4. 删除所有未使用的网络
docker network prune -f
5. 删除所有未使用的数据卷
docker volume prune -f
6. 验证清理结果
确保清理完成,运行以下命令检查是否还有残留:
容器:
docker ps -a
镜像:
docker images -a
网络:
docker network ls
卷:
docker volume ls
-.-
评论区