ubuntu14.04下解决docker假死及更改docker存储位置
解决docker假死
在调整docker存储位置时,突然遇到docker命令无反应的情况,经过一段时间排查及搜集资料最终解决了假死的问题,并且成功改变了docker的默认存储位置。
docker stop [容器名称] 命令无响应 docker ps -a 查看容器运行状态无响应 docker exec -it [容器名称] /bin/bash 进入docker无响应 ...
后备份了docker目录(/var/lib/docker),经过一番尝试之后,发现存在一些僵尸进程
ps -ef | grep 'defunct' 查看具体信息
最终确认了筛选出来的PPID就是对应的容器ID的进程,最终kill -9 ID 后top查看僵尸进程消失,一切恢复正常。
docker目录迁移
1.查看当前系统下docker所有正在运行的容器,并停止
docker ps -a
docker stop [容器名称/容器ID]
2.停止docker服务
sudo service docker stop
3.将/var/lib/docker复制到数据盘下(注意复制后文件大小是否有变化)
cp -r /var/lib/docker /数据盘/路径/docker
4.删除/var/lib/docker内的数据
rm -rf /var/lib/docker
如果提示被占用,是由于挂载的原因,执行umount操作
cat /proc/mounts 找到docker相关挂载,执行umount操作 umount /var/lib/docker 再次执行删除操作 rm -rf /var/lib/docker
5.将复制后的docker软链接到安装目录下
ln - s /数据盘/路径/docker /var/lib/docker # 注意路径
6.启动docker服务
sudo service docker start
7.启动已停止的容器
docker start [容器名称/容器ID]