• Linux下正确修改Docker镜像和容器的默认存储位置,亲测有效


    我们通过 yum 的方式安装完Docker环境后,它默认的存储位置是 /var/lib/docker,默认的 pid 存放位置是 /var/run/docker.pid。

    如果仅仅是做测试,我们可能没有必要修改,但是当大量使用docker镜像的时候,我们可能就要默认存储的位置了。

    具体操作方法如下:

    1、停止docker:

    service docker stop

    2、修改docker服务的service文件:

    vim /usr/lib/systemd/system/docker.service

    3、找到 ExecStart=/usr/bin/dockerd 部分所在的行,大约在第14行,行尾增加参数,结果为:

    ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --data-root=/data/docker  --pidflie=/data/docker/docker.pid
    说明:--pidfile 参数,用来修改docker的pid文件默认存放位置,自行安排

    4、保存service文件,移动原先的存储目录,重新启动docker服务:

    systemctl daemon-reload  # 重新载入系统服务,必须执行!
    mkdir -p /data
    mv /var/lib/docker /data
    service docker start

    5、查看一下docer的当前运行信息:

    docker info | grep "Docker Root Dir"

    可以看到,docker的存储位置已经修改成功了。

    PS:还有一种更省事的变更方式,就是先停止docker服务,再移动旧目录,然后新建一个软链接,不过,这没什么含量,不想像我这样折腾的,可以试一下:

    systemctl stop docker
    mv /var/lib/docker /data
    ls -s /data/docker /var/lib/docker
    service docker start

    有需要的朋友拿走不谢~

    转自 白天的影子

     

  • 相关阅读:
    Linux下hook指定库
    一行一行往上爬
    高可用数据同步方案-SqlServer迁移Mysql实战
    Hystrix核心基础
    Fastjson解析多级泛型的几种方式—使用class文件来解析多级泛型
    面试大全之JVM篇
    云原生下的CICD
    学习Raft算法的笔记
    Go语言下的线程模型
    分布式事务解决方案以及 .Net Core 下的实现(上)
  • 原文地址:https://www.cnblogs.com/gaogaoxingxing/p/15480797.html
Copyright © 2020-2023  润新知