美文网首页Docker容器技术
Docker中修改镜像、容器的存放目录

Docker中修改镜像、容器的存放目录

作者: garyond | 来源:发表于2017-01-03 10:42 被阅读7265次

解决方案

在默认情况下,Docker镜像和容器的默认存放位置为:/var/lib/docker

一般根下分区我们不会给太大。镜像和容器越存越多一般我们有两种解决方法:

1. 挂载大分区到/var/lib/docker

一般选择建立逻辑分区lvm,方便后期扩展集体。

  • 建立新分区,并格式化

    [root@localhost lib]# lvcreate -L 300G lv_docker vg_home  
    [root@localhost lib]# mkfs.ext4 /dev/vg_home/lv__docker  
    
  • 挂载新分区到临时挂载点

    [root@localhost lib]# mkdir /mnt/docker  
    [root@localhost lib]# mount /dev/vg_home/lv_docker /mnt/docker/ 
    
  • 停掉docker服务后,复制/var/lib/docker下数据到临时挂载点

    [root@localhost lib]# service docker stop  
    [root@localhost lib]# cp -r /var/lib/docker/* /mtn/docker 
    
  • 修改/var/lib/docker为/var/lib/docker.bak,并创建/var/lib/docker

    [root@localhost lib]# mv /var/lib/docker{,.bak} 
    [root@localhost lib]# mkdir /var/lib/docker  
    
  • 挂载新分区到/var/lib/docker,并设置开机自动挂载

    [root@localhost lib]# mount /dev/vg_home/lv_docker /var/lib/docker 
    [root@localhost lib]# vim /etc/fstab
    
    ---  
     /dev/vg_home/lv_docker /var/lib/docker   ext4    defaults 0 0
    ----   
    
  • 启动Docker服务,检查Docker服务是否可用, 数据是否完整

    [root@localhost lib]# /etc/init.d/docker start
    [root@localhost lib]# docker images  
    [root@localhost lib]# docker ps -a
    
  • 确认无误后卸载临时挂载点,删除/var/lib/docker.bak

    [root@localhost lib]# umount /mnt/docker  
    [root@localhost lib]# rm -rf /var/lib/docker.bak
    

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

在Docker服务配置文件/etc/sysconfig/docker中修改镜像和容器存放路径的参数, 在配置文件中加入:

other_args="--graph=/data/docker"。

具体执行步骤如下:

  • 停止Docker服务
[root@localhost lib]# service docker stop
  • 备份数据到新的存放路径
[root@localhost lib]# cp -rf /var/lib/docker /data/
  • 修改备份/var/lib/docker路径
[root@localhost lib]# mv /var/lib/docker{,.bak}
  • 启动Docker服务
[root@localhost lib]# service docker start
  • 测试Docker服务
[root@localhost lib]# docker info

相关文章

  • Docker中修改镜像、容器的存放目录

    解决方案 在默认情况下,Docker镜像和容器的默认存放位置为:/var/lib/docker 一般根下分区我们不...

  • 使用第一个容器

    一、容器操作 Docker镜像、容器、及相关配置,都存放在/var/lib/docker目录下 创建容器 停止容器...

  • docker基本概念和常用命令

    1、docker三大要素:镜像、容器、仓库 镜像、容器相当于java中的类、对象; 仓库集中存放镜像文件的地方; ...

  • failed to write all bytes for bi

    检查一下docker容器存储空间是否有剩余空间 解决方法 将docker容器存放目录修改停止docker服务将原d...

  • Docker 常用操作

    Docker 修改已经存在的镜像 运行镜像 容器文件拷贝

  • docker

    docker 镜像重命名# 如何找出docker容器日志文件 容器日志一般存放在/var/lib/docker下面...

  • Docker入门

    目录 一、Docker介绍二、安装Docker三、镜像管理四、通过容器创建镜像五、通过模板创建镜像六、容器管理七、...

  • Docker安装nginx

    docker拉取nginx最新镜像; 启动一个临时容器; nginx运行在docker容器中对应的目录如下: 配置...

  • 101、镜像的构建

    1、镜像构建方式 1.1、docker commit 运行容器 对容器进行修改 通过docker commit 把...

  • 容器存储

    容器存储 docker为容器准备了两种存放数据的方法1、docker storage driver 管理的镜像层和...

网友评论

  • 90a7b85259b1:按照你的写法,我发现我镜像复制了,但是重启之后镜像全没了,不知道你是什么系统,怎么实现的
    garyond: @鑫鑫之火可以燎原 我的系统是CentOS7,DOCKER 1.13版本(之后版本未测试过),以上步骤在该操作系统和docker版本下已经测试过。
  • f574eaa3cf4e:按你的步骤一步一步来的,但是启动之后所有的镜像都不在了。。。。😭
    garyond:@顾大人_a89d 镜像文件没有复制过来吧

本文标题:Docker中修改镜像、容器的存放目录

本文链接:https://www.haomeiwen.com/subject/ucwgvttx.html