Docker Compose无法处理RDB格式版本10问题求助
解决Docker卷被占用无法删除及Redis RDB版本兼容问题
排查并清理关联容器
- 执行
docker ps -a查看所有容器(含已停止状态),docker container ls仅显示运行中容器,已停止容器可能仍挂载目标卷:docker ps -a - 找到与目标卷关联的容器后,先停止再删除:
docker stop <容器ID/名称> docker rm <容器ID/名称> - 若无法定位单个容器,直接批量清理所有停止状态的容器:
docker container prune
强制解除进程占用
- Linux/macOS:用
lsof查找占用卷的进程ID:
找到PID后强制终止进程:lsof | grep 522220763c3b077347006fd288b1695b75c36b8d2d9e614fddb8a358a3c3bc49kill -9 <进程PID> - Windows:打开「资源监视器」,在搜索栏输入卷ID关联关键词,定位进程后在任务管理器中强制结束。
重置Docker服务(终极方案)
- Linux:
sudo systemctl stop docker sudo systemctl stop docker.socket sudo rm -rf /var/lib/docker/volumes/522220763c3b077347006fd288b1695b75c36b8d2d9e614fddb8a358a3c3bc49 sudo systemctl start docker - Windows/macOS:打开Docker Desktop,进入「故障排除」页面,点击「重置为出厂默认设置」(操作前请备份重要镜像与数据)。
修复Redis RDB版本兼容性
删除卷后,在docker-compose.yml中指定Redis RDB版本,避免再次出现格式不兼容问题:
services: redis: image: redis:latest command: redis-server --rdbversion 9 volumes: - redis-data:/data volumes: redis-data:
内容的提问来源于stack exchange,提问作者Pablo Gonzalez
相关产品推荐
相关产品推荐

