【Linux】docker更改默认目录

参考:
docker磁盘空间不足解决办法
给docker扩容、删除/var/lib/docker

问题描述:

某一天一台部署了docker的服务器根目录满了,经核查是docker默认目录/var/lib/docker占用空间较大导致,第一次搞docker没经验,用了默认目录

在这里插入图片描述

问题解决

主要思路是迁移docker默认目录

1.查看docker镜像存放目录空间大小

du -sh /var/lib/docker/

2.停止docker服务。

systemctl stop docker

3.查看磁盘容量大的空间,且在上面创建新的docker目录。

df -h
mkdir -p /yyq/docker/lib

4.迁移/var/lib/docker目录下的文件到新创建的目录/data/docker/lib

rsync -avz /var/lib/docker /yyq/docker/lib/

5.编辑 /etc/docker/daemon.json 添加如下参数

{
  "graph": "/data/docker/lib/docker"
}

6.重新加载docker,并重启docker服务。

systemctl daemon-reload && systemctl restart docker

7.检查docker是否变更为新目录/yyq/docker/lib/docker

[root@consul3 yyq]# docker info
Containers: 16
 Running: 16
 Paused: 0
 Stopped: 0
Images: 16
Server Version: 18.06.3-ce
Storage Driver: overlay2
 Backing Filesystem: xfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 468a545b9edcd5932818eb9de8e72413e616e86e
runc version: a592beb5bc4c4092b1b1bac971afed27687340c5
init version: fec3683
Security Options:
 seccomp
  Profile: default
Kernel Version: 3.10.0-957.el7.x86_64
Operating System: Red Hat Enterprise Linux Server 7.6 (Maipo)
OSType: linux
Architecture: x86_64
CPUs: 16
Total Memory: 62.76GiB
Name: consul3.nrmsserver
ID: 2NVK:UFPW:PDN5:7Q6Z:MFEX:C2XW:CM54:SHUX:KI5K:MVZY:76SD:VOOO
Docker Root Dir: /yyq/docker/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

[root@consul3 yyq]# 
[root@consul3 yyq]# rm -rf /var/lib/docker
rm: 无法删除"/var/lib/docker/containers/abee162f55bf49ce3e783d1fc5ee79b606b2568fcc361fa8ae69fcf513fed4fa/mounts/shm": 设备或资源忙
rm: 无法删除"/var/lib/docker/containers/e3167f81ea3500df346a5b40ca5e3711ad708e2cd88c6be4a6a65732add9137f/mounts/shm": 设备或资源忙
rm: 无法删除"/var/lib/docker/containers/1faf60e6315e32310a06d31b6934b2de6b458f3756a20bcdf78c5ec3dc2b526b/mounts/shm": 设备或资源忙
rm: 无法删除"/var/lib/docker/containers/6194eb1b57b5cdf988156b5b202af9e6e4d6af2eebd4783df21c28fcc8e4d783/mounts/shm": 设备或资源忙
rm: 无法删除"/var/lib/docker/overlay2/eabc83d16984f73a7edc87dff4c08ba201868c68486cfdf78485b8f7c9a29bd8/merged": 设备或资源忙
rm: 无法删除"/var/lib/docker/overlay2/9708367d5c53a1de182802ed61e62de5515a343ae27e162301a436417f4c5c87/merged": 设备或资源忙
rm: 无法删除"/var/lib/docker/overlay2/59cb5b62dad797f8a1f47a62b0cc4f0a628af94c14c90424eafc151ffaf0ca5d/merged": 设备或资源忙
rm: 无法删除"/var/lib/docker/overlay2/b550203946dbf0afe1af052148b887dc358d5de0c8640836e3f9b791de23f0c1/merged": 设备或资源忙
[root@consul3 irmsdate]#

8.解决无法删除/var/lib/docker的问题

查到其他的方案是比较复杂,我是直接df -hl查到所有挂载信息,把/var/lib/docker下内容umount即可

[root@consul3 irmsdate]# df -hl
文件系统                   容量  已用  可用 已用% 挂载点
/dev/mapper/rhel-root       50G  5.1G   45G   11% /
devtmpfs                    32G     0   32G    0% /dev
tmpfs                       32G     0   32G    0% /dev/shm
tmpfs                       32G  3.2G   29G   11% /run
tmpfs                       32G     0   32G    0% /sys/fs/cgroup
/dev/sda1                 1014M  177M  838M   18% /boot
/dev/mapper/rhel-home       50G   33M   50G    1% /home
tmpfs                      6.3G  4.0K  6.3G    1% /run/user/42
tmpfs                      6.3G   60K  6.3G    1% /run/user/0
/dev/sr0                   4.2G  4.2G     0  100% /mnt
/dev/mapper/rhel-yyq  300G   54G  247G   18% /yyq
tmpfs                      6.3G     0  6.3G    0% /run/user/1000
overlay                     50G  5.1G   45G   11% /var/lib/docker/overlay2/59cb5b62dad797f8a1f47a62b0cc4f0a628af94c14c90424eafc151ffaf0ca5d/merged
shm                         64M     0   64M    0% /var/lib/docker/containers/abee162f55bf49ce3e783d1fc5ee79b606b2568fcc361fa8ae69fcf513fed4fa/mounts/shm
shm                         64M     0   64M    0% /var/lib/docker/containers/1faf60e6315e32310a06d31b6934b2de6b458f3756a20bcdf78c5ec3dc2b526b/mounts/shm
overlay                     50G  5.1G   45G   11% /var/lib/docker/overlay2/b550203946dbf0afe1af052148b887dc358d5de0c8640836e3f9b791de23f0c1/merged
shm                         64M     0   64M    0% /var/lib/docker/containers/6194eb1b57b5cdf988156b5b202af9e6e4d6af2eebd4783df21c28fcc8e4d783/mounts/shm
overlay                     50G  5.1G   45G   11% /var/lib/docker/overlay2/9708367d5c53a1de182802ed61e62de5515a343ae27e162301a436417f4c5c87/merged
shm                         64M     0   64M    0% /var/lib/docker/containers/e3167f81ea3500df346a5b40ca5e3711ad708e2cd88c6be4a6a65732add9137f/mounts/shm
[root@consul3 yyq]# umount /var/lib/docker/overlay2/59cb5b62dad797f8a1f47a62b0cc4f0a628af94c14c90424eafc151ffaf0ca5d/merged
[root@consul3 yyq]# umount /var/lib/docker/containers/abee162f55bf49ce3e783d1fc5ee79b606b2568fcc361fa8ae69fcf513fed4fa/mounts/shm
[root@consul3 yyq]# umount /var/lib/docker/containers/1faf60e6315e32310a06d31b6934b2de6b458f3756a20bcdf78c5ec3dc2b526b/mounts/shm
[root@consul3 yyq]# umount /var/lib/docker/overlay2/b550203946dbf0afe1af052148b887dc358d5de0c8640836e3f9b791de23f0c1/merged
[root@consul3 yyq]# umount /var/lib/docker/containers/6194eb1b57b5cdf988156b5b202af9e6e4d6af2eebd4783df21c28fcc8e4d783/mounts/shm
[root@consul3 yyq]# umount /var/lib/docker/overlay2/9708367d5c53a1de182802ed61e62de5515a343ae27e162301a436417f4c5c87/merged
[root@consul3 irmsdate]# umount /var/lib/docker/containers/e3167f81ea3500df346a5b40ca5e3711ad708e2cd88c6be4a6a65732add9137f/mounts/shm
[root@consul3 irmsdate]# df -hl
文件系统                   容量  已用  可用 已用% 挂载点
/dev/mapper/rhel-root       50G  3.9G   47G    8% /
devtmpfs                    32G     0   32G    0% /dev
tmpfs                       32G     0   32G    0% /dev/shm
tmpfs                       32G  3.2G   29G   11% /run
tmpfs                       32G     0   32G    0% /sys/fs/cgroup
/dev/sda1                 1014M  177M  838M   18% /boot
/dev/mapper/rhel-home       50G   33M   50G    1% /home
tmpfs                      6.3G  4.0K  6.3G    1% /run/user/42
tmpfs                      6.3G   60K  6.3G    1% /run/user/0
/dev/sr0                   4.2G  4.2G     0  100% /mnt
/dev/mapper/rhel-yyq	   300G   54G  247G   18% /yyq
tmpfs                      6.3G     0  6.3G    0% /run/user/1000
[root@consul3 yyq]# rm -rf /var/lib/docker/
[root@consul3 yyq]# df -hl
文件系统                   容量  已用  可用 已用% 挂载点
/dev/mapper/rhel-root       50G  3.9G   47G    8% /
devtmpfs                    32G     0   32G    0% /dev
tmpfs                       32G     0   32G    0% /dev/shm
tmpfs                       32G  3.2G   29G   11% /run
tmpfs                       32G     0   32G    0% /sys/fs/cgroup
/dev/sda1                 1014M  177M  838M   18% /boot
/dev/mapper/rhel-home       50G   33M   50G    1% /home
tmpfs                      6.3G  4.0K  6.3G    1% /run/user/42
tmpfs                      6.3G   60K  6.3G    1% /run/user/0
/dev/sr0                   4.2G  4.2G     0  100% /mnt
/dev/mapper/rhel-yyq       300G   54G  247G   18% /yyq
tmpfs                      6.3G     0  6.3G    0% /run/user/1000
[root@consul3 yyq]# 
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

实施工程师木易

感谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值