修改Docker本地镜像与容器的存储位置的方法
默认情况下Docker的存放位置为:/var/lib/docker
可以通过命令查看具体位置:docker info | grep "Docker Root Dir"
方法一:使用软连接(最简单)
1 2 3 4 | 首先停掉Docker服务:systemctl stop docker mv /var/lib/docker /root/data/docker ln -s /root/data/docker /var/lib/docker 最后启动docker |
方法二:使用逻辑卷(推荐)
解决这个问题,最直接的方法就是挂载分区到这个目录
1 2 3 4 5 6 7 8 9 10 11 12 | vgcreate vg_docker /dev/sdb1 /dev/sdb2 /dev/sdb3 /dev/sdb5 /dev/sdb6 /dev/sdb7 /dev/sdb8 /dev/sdb9 /dev/sdb10 /dev/sdb11 lvcreate -n lv_docker -L 800G vg_docker mkfs.ext4 /dev/vg_docker/lv_docker systemctl stop docker mv /var/lib/docker{,.bak} mkdir /var/lib/docker mount /dev/vg_docker/lv_docker /var/lib/docker cp -r /var/lib/docker.bak/* /var/lib/docker/ echo "/dev/vg_docker/lv_docker /var/lib/docker ext4 defaults 0 0" >> /etc/fstab rm -rf /var/lib/docker.bak systemctl start docker |
方法三:改动docker的配置文件
指定镜像和容器存放路径的参数是--graph=/var/lib/docker
,我们只需要修改配置文件指定启动参数即可。
1 2 3 4 5 6 7 8 9 | -- vim /lib/systemd/system/docker.service ExecStart=/usr/bin/dockerd --graph=/data/docker/ -- 改动docker启动配置文件 $ sudo vim /etc/docker/daemon.json { "live-restore": true, "graph": [ "/data/docker/" ] } |