docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > CentOS7修改Docker镜像默认存储位置

CentOS7如何修改Docker镜像默认存储位置

作者:程行者

这篇文章主要介绍了CentOS7如何修改Docker镜像默认存储位置问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

CentOS7修改Docker镜像默认存储位置

停止docker服务

# systemctl stop docker

修改docker服务启动文件

# vim /etc/sysconfig/docker

OPTIONS='--selinux-enabled --log-driver=journald --graph=/docker  --signature-verification=false --insecure-registry  192.168.1.1'
#--insecure-registry  192.168.1.1这是仓库地址可以忽略
# /docker这个目录就是我用于替代默认/var/lib/docker的目录,目录创建好之后记得“mv /var/lib/docker/* /docker/”,把所有原先目录下所有的文件和目录拷贝到新目录下。

重新加载配置并启动

# systemctl daemon-reload
# systemctl start docker

检查docker信息
# docker info

修改docker默认存储路径方法总结

默认情况下,docker镜像的默认存储路径是/var/lib/docker,这相当于直接挂载根目录下,然而如果在安装系统时选择了自动分区,根分区一般不会分太大,CentOS会默认分50G,麒麟v4大概是100G。

docker的默认路径:

修改docker的默认路径,有三种方法

先创建新的docker目录

mkdir /home/docker

centos在安装时如果选择默认分区,会把最大存储空间分给home,此处也可另外挂载一块磁盘,把新的docker目录建在新磁盘上面

如果已经有镜像已经加载,已经有容器正在运行,请先停了docker服务,并把数据迁移到新目录中

1.修改docker.service

vim /usr/lib/systemd/system/docker.service
 
#在里面的EXECStart的后面增加--graph /home/docker:
 
ExecStart=/usr/bin/dockerd  -H fd:// --containerd=/run/containerd/containerd.sock  --graph /home/docker

保存退出后执行以下命令

systemctl enable docker
systemctl daemon-reload
systemctl restart docker

2.编辑配置文件/etc/docker/daemon.json

添加 "data-root": "/home/docker",

vim /etc/docker/daemon.json
 
{
  "registry-mirrors": ["https://registry.docker-cn.com"],
  "data-root": "/home/docker",
  "log-driver":"json-file",
  "log-opts": {"max-size":"100m"}
}

保存退出后

重启docker应用

systemctl restart docker

3.使用软链接

使用软链接需要先把/var/lib下的docker目录删除,删除之前记得迁移数据。然后用下面命令创建软链接

ln -s /home/docker /var/lib
systemctl restart docker

重启docker

这就是修改docker默认路径之方法,可根据实际情况选用。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文