关于docker默认存储位置及docker系统默认池存储卷存储限制空间修改

author author     2022-10-28     525

关键词:

一、Docker默认存储位置

 

  Docker默认存储位置在/var/lib/docker,通过命令 docker info | grep "Docker Root Dir"进行查看。有时候因为磁盘空间的问题,我们需要对其进行修改,下面有几种方法来解决docker默认存储位置的问题:

    1. 直接将数据盘挂载到/var/lib/docker目录上;

    2. 基于软连接的方式进行修改:数据盘挂载在/data目录下面,我们这样操作

      mv /var/lib/docker /data/dockerln && ln -s /data/dockerln /var/lib/docker

    3. 修改镜像和容器的存放路径:

      1. 指定镜像和容器存放路径的参数是--graph=/var/lib/docker,我们只需要修改配置文件指定启动参数即可。
        Docker 的配置文件可以设置大部分的后台进程参数,在各个操作系统中的存放位置不一致,在 Ubuntu 中的位置是:/etc/default/docker,在 CentOS 中的位置是:/etc/sysconfig/docker。
        如果是 CentOS6 则添加下面这行:
        OPTIONS=--graph="/root/data/docker" --selinux-enabled -H fd://
        如果是 Ubuntu 则添加下面这行(因为 Ubuntu 默认没开启 selinux):
        OPTIONS=--graph="/root/data/docker" -H fd://# 或者DOCKER_OPTS="-g /root/data/docker"
        最后重新启动,Docker 的路径就改成 /root/data/docker 了。
        centos7下,也可以
        修改docker.service文件,使用-g参数指定存储位置
        vi /usr/lib/systemd/system/docker.service  
        ExecStart=/usr/bin/dockerd --graph /new-path/docker 
         // reload配置文件 
        systemctl daemon-reload 
         // 重启docker 
        
        systemctl restart docker.service
        如果docker是1.12或以上的版本,可以修改(或新建)daemon.json文件。修改后会立即生效,不需重启docker服务。
        vim /etc/docker/daemon.json 
        "registry-mirrors": ["http://7e61f7f9.m.daocloud.io"],"graph": "/new-path/docker"
    4. system下创建配置文件:

      1. 在/etc/systemd/system/docker.service.d 目录下创建一个Drop-In文件“docker.conf”,默认 docker.service.d 文件夹不存在。所以你必须先创建它。
        创建Drop-In 文件的原因,是我们希望Docker 服务,使用docker.conf文件中提到的特定参数,将默认服务所使用的位于/lib/systemd/system/docker.service文件中的参数进行覆盖。如果你想深入了解Drop-In,请阅读system.unit文档
        定义新的存储位置现在打开docker.conf增加如下内容:
        # sudo vi /etc/systemd/system/docker.service.d/docker.conf 
        [Service] 
        ExecStart= 
        ExecStart=/usr/bin/dockerd --graph="/mnt/new_volume" --storage-driver=devicemapper
        保存并退出VI编辑器,/mnt/new_volume 是新的存储位置,而devicemapper是当前docker所使用的存储驱动。如果你的存储驱动有所不同,请输入之前第一步查看并记下的值。Docker官方文档中提供了更多有关各种存储驱动器的信息。现在,你可以重新加载服务守护程序,并启动Docker服务了。这将改变新的镜像和容器的存储位置。
        # sudo systemctl daemon-reload 
        # sudo systemctl start docker
        为了确认一切顺利,运行 #docker info | grep "Docker Root Dir"命令检查Docker 的根目录.它将被更改为/mnt/new_volume
    5. 使用docker-storage-set(docker1.12)命令进行配置:

      1. 配置文件位置:/usr/lib/docker-storage-setup/docker-storage-setup或者/etc/sysconfig/docker-storage-setup、/etc/sysconfig/docker-storage
        vim /etc/sysconfig/docker-storage
        # This file may be automatically generated by an installation program.
        # Please DO NOT edit this file directly. Instead edit
        # /etc/sysconfig/docker-storage-setup and/or refer to
        # "man docker-storage-setup".
        # By default, Docker uses a loopback-mounted sparse file in
        # /var/lib/docker.  The loopback makes it slower, and there are some
        # restrictive defaults, such as 100GB max storage.
        DOCKER_STORAGE_OPTIONS=--graph="要保存的路径"
        或者
        DEVS=/dev/vdb
        DATA_SIZE=800GB(更改docker默认存储大小)


        参考:http://www.mamicode.com/info-detail-1917569.html http://forangela.blog.51cto.com/9680035/1949947 


    以上操作可能需要在重启docker守护进程的情况下进行。

二、Docker系统默认池存储、卷存储限制空间

   参考:https://blog.csdn.net/chengxuyuanyonghu/article/details/76560166  

   Docker默认空间大小分为两个,一个是池空间大小,另一个是容器空间大小。

   池空间大小默认为:100G

   容器空间大小默认为是:10G

   所以修改空间大小也分为两个:

   这里使用centos下的yum进行安装的Docker。 

   首先,修改空间大小,必需使Docker运行在daemon环境下,即先停止正在运行的docker服务:

service docker stop

   然后使用命令使用daemon环境下运行docker:

docker -d

   1、修改池空间大小方法:

dd if=/dev/zero of=/var/lib/docker/devicemapper/devicemapper/data bs=1G count=0 seek=1000
dd if=/dev/zero of=/var/lib/docker/devicemapper/devicemapper/metadata bs=1G count=0 seek=10

    上面的1000为1TB大小,即为数据池空间大小为1TB,而10则为Metadata的空间大小,10GB
        从运行完后,使用命令查看docker池空间大小:

    docker info

      技术分享图片

     可以看到池空间已经被设置为data=1TB和metadata=10GB

      2. 

centos7修改docker容器和镜像默认存储位置

参考技术A本文被帮助文档:通常,当你开始使用docker时,我们并不太关心Docker用于存储镜像和容器的默认目录。当使用Docker进行更多实验时,Docker开始占用大量的空间时,你不得不按下紧急按钮。所以现在是时候把故障排除放... 查看详情

docker修改默认存储位置(代码片段)

...小,如果想大量存储容器镜像的话很容易导致根目录写满docker默认的数据目录是/var/lib/docker我们想要移动数据目录可以按照下面说明操作即可。 指定镜像和容器存放路径的参数是--graph=/var/lib/docker,我们只需要修改配置文件... 查看详情

修改docker的默认存储位置

servicedockerstopmv/var/lib/docker/mnt/dockerln-s/mnt/docker/var/lib/dockerls/var/lib/dockerservicedockerstart   查看详情

修改docker默认镜像和容器的存储位置

一、Why  Docker默认的镜像和容器存储位置在/var/lib/docker中,如果仅仅是做测试,我们可能没有必要修改,但是当大量使用的时候,我们可能就要默认存储的位置了。二、How  2.1修改docker.service文件 cd/etc/systemd/system/multi-user.t... 查看详情

修改docker默认的存储位置(代码片段)

查看docker存储位置#sudodockerinfo|grep"DockerRootDir"DockerRootDir:/var/lib/docker停止docker服务systemctlstopdocker复制目录内容,/data/lib/docker为修改后的docker存储位置rsync-avzP/var/lib/docker//data/lib/docker备份原目录mv-u/var/lib/docker/var/lib/docker.... 查看详情

修改docker迁移数据和修改默认存储路径

参考技术A由于docker默认会存储在/var/lib/docker/目录下,而该目录又挂载在/根分区,随着长时间的运行占用的磁盘会越来越多,而默认的根分区只有50G所以就要考虑迁移和修改docker的默认存储路径到一个新的分区上了。通过修改doc... 查看详情

docker修改默认存储路径(代码片段)

目录docker修改默认存储路径修改路径docker修改默认存储路径服务器环境:Linuxapp-test3.10.0-693.11.6.el7.x86_64#1SMPThuJan401:06:37UTC2018x86_64x86_64x86_64GNU/Linux安装命令:$yuminstall-ydocker安装docker后镜像存储默认地址:/var/lib/docker,这样会让/挂... 查看详情

修改docker的默认存储路径

之前的docker让我鼓捣坏了,然后就yumremovedocker了,并把相关的文件夹内容都删掉了,重新配置。注意:这是测试环境,系统是centos7。docker的默认路径是/var/lib/docker,需求是更换到/home/docker中。安装dockeryum-yinstalldocker开启docker服... 查看详情

docker镜像管理

Docker镜像管理一、Docker镜像的基本操作1.查看本地镜像2.搜索镜像仓库镜像3.拉取镜像4.导出镜像5.导入镜像6.删除镜像二、docker的操作系统1.Linux系统构成2.Docker操作系统三、Docker镜像存放位置1.docker镜像存放位置2.Docker相关文件及... 查看详情

docker配置本地镜像与容器的存储位置(代码片段)

默认情况下Docker的存放位置为:/var/lib/docker 可以通过下面命令查看具体位置:sudodockerinfo|grep"DockerRootDir"指定镜像和容器存放路径的参数是–graph=/var/lib/docker,我们只需要修改配置文件指定启动参数即可。Docker的配置文件可... 查看详情

修改docker默认存储路径

docker默认文件存储路径放置在/var/lib/docker下,可通过docker info查看docker root的返回值 #systemctlstopdocker#cp-rf/var/lib/docker/data/#mv/var/lib/docker/var/lib/docker.bak#ln-sf/data/docker/var/lib/docker&n 查看详情

docker默认存储路径修改

Docker默认存储路径:#dockerinfo......Dataloopfile:/var/lib/docker/devicemapper/devicemapper/data......DockerRootDir:/var/lib/dockerDebugMode(client):falseDebugMode(server):falseRegistry:https://index.docker. 查看详情

docker配置本地镜像与容器的存储位置

原文:Docker配置本地镜像与容器的存储位置使用find命令找到大于指定大小的文件:find/-typef-size+10G1排除某个目录find/-path"/media/xww"-typef-size+10G1修改Docker本地镜像与容器的存储位置的方法方法一、软链接默认情况下Docker的存放位置... 查看详情

如何优化docker储存

大家在使用Docker的过程中,有没有想过,Docker在本地存储镜像时把文件存储在哪里了呢?有没有对文件的总大小做一定的限制呢?能不能调整本地存储的位置及总限制大小呢?今天,我们就从这些问题入手,来讨论一下Docker的存... 查看详情

docker修改默认存储路径的一个方法

.../节点的大小设置的比较小/home路径设置的一直比较大但是docker默认的存储路径在/var/lib/docker下面感觉不太好.2.为了解决这个问题,计划将docker的默认存储路径从/var/lib/docker中移出去方法:在/home目录下创建目录.cd/homemkdird 查看详情

docker从零开始存储存储概述

管理Docker中的数据默认情况下,在容器内创建的所有文件都存储在可写容器层中。这意味着:当该容器不再运行时,数据不会持久存在,如果另一个进程需要,则可能很难从容器中获取数据。容器的可写层紧密耦合到运行容器的... 查看详情

docker3.10修改默认网卡docker0的ip地址的方法,及docker的常用命令

docker3.10版本,修改默认网卡方法。cat/etc/docker/daemon.json在此文件中添加如下一行,然后重启服务。{"bip":"192.168.102.1/24"}systemctlrestartdockerdocker床用命令使用方法:dockerrmdockerps-a|grepExited|awk‘{print$1}‘删除已经退出 查看详情

docker应用数据的管理

容器数据存储的三种方式dockervolumedocker管理素质及文件系统的一部分,保存数据最佳方式bindmounts  将宿主机的文件映射到容器里tmpfs  存储在宿主机的内存里查看docker的默认存储驱动Containers:9Running:5Paused:0Stopped:4Imag... 查看详情