今天发现有台机器的个别服务挂了,并且无法重启,查找原因后发现原来是/分区满了。这台机器的/只分配了50G的空间,但是默认安装的docker镜像以及运行的容器都占用了/分区的空间。于是就需要把Docker的imagescontainer都迁移到别的分区。

查看Docker默认的根路径

使用如下命令查看

1
docker info | grep "Docker Root Dir"

默认情况下,此时会输出/var/lib/docker

修改Docker的默认根路径

偷个懒,这里我使用软链的方法去修改Docker的根路径。

停止Docker

1
service docker stop

创建目录

因这台机器的硬盘挂载在/home目录下,所以这里在/home目录下创建文件夹

1
mkdir -p /home/docker

移动docker目录

/var/lib/docker目录移动到/home/docker目录下。

1
mv /var/lib/docker /home/docker

过程比较长。。。

创建软链

/home/docker/docker目录软链到/var/lib/docker

1
ln -s /home/docker/docker /var/lib/docker

此时,重新启动Docker即可。