date: 2020-05-17title: docker修改根目录 #标题
tags: docker修改根目录 #标签
categories: docker # 分类
一般docker默认安装后根目录为/var/lib/docker
,但可能var目录的磁盘空间并不是很大,随着业务的运行,docker的根目录也越来越大(因为根目录里存放了镜像、日志、网络配置等等。所有docker的核心内容都存储于根目录。)
这篇博文用于记录如何更改docker的根目录。
我这里打算将docker的根目录迁移到/data/lib/docker
目录。
同步docker根目录数据到新目录
[root@harbor ~]# systemctl stop docker # 停止docker服务
[root@harbor ~]# rsync -avz /var/lib/docker/ /data/lib/docker/ # 同步数据
[root@harbor ~]# ll /data/lib/docker/ # 确认同步后的数据
总用量 0
drwx------ 2 root root 24 4月 18 19:23 builder
drwx------ 4 root root 92 4月 18 19:23 buildkit
drwx------ 3 root root 20 4月 18 19:23 containerd
drwx------ 2 root root 6 4月 18 19:23 containers
drwx------ 3 root root 22 4月 18 19:23 image
drwxr-x--- 3 root root 19 4月 18 19:23 network
drwx------ 4 root root 112 4月 18 19:49 overlay2
drwx------ 4 root root 32 4月 18 19:23 plugins
drwx------ 2 root root 6 4月 18 19:49 runtimes
drwx------ 2 root root 6 4月 18 19:23 swarm
drwx------ 2 root root 6 4月 18 19:49 tmp
drwx------ 2 root root 6 4月 18 19:23 trust
drwx------ 2 root root 25 4月 18 19:23 volumes
创建docker配置文件
[root@harbor ~]# mkdir -pv /etc/systemd/system/docker.service.d
[root@harbor ~]# vim /etc/systemd/system/docker.service.d/devicemapper.conf # 写入以下内容
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd --graph=/data/lib/docker
重启docker,确定docker根目录被修改
[root@harbor ~]# systemctl daemon-reload
[root@harbor ~]# systemctl restart docker
[root@harbor ~]# docker info | grep "Dir" # 确认目录已更改
Docker Root Dir: /data/lib/docker
[root@harbor ~]# docker images # docker的镜像还在
REPOSITORY TAG IMAGE ID CREATED SIZE
busybox latest be5888e67be6 3 days ago 1.22MB
[root@harbor ~]# rm -rf /var/lib/docker/ # 删除原根目录
迁移完成!!!