docker如何修改容器默认存储路径

 更新时间:2024年07月04日 15:18:24   作者:早退的程序员  
这篇文章主要介绍了docker如何修改容器默认存储路径问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

docker修改容器默认存储路径

docker安装之后默认的服务数据存放根路径为/var/lib/docker目录下,var目录默认使用的是根分区的磁盘空间;

所以这是非常危险的事情;

随着我们镜像、启动的容器实例开始增多的时候,磁盘所消耗的空间也会越来越大,所以我们必须要做数据迁移和修改docker服务的默认存储位置路径;

有多种方式是可以修改docker默认存储目录路径的,但是最好是在docker安装完成后,第一时间便修改docker的默认存储位置路径为其他磁盘空间较大的目录(一般企业中为/data目录),规避迁移数据过程中所造成的风险。

1)创建docker容器存放的路径

 # mkdir -p /home/data/docker/lib

(2)停止Docker服务并迁移数据到新目录

 # systemctl stop docker.service
 # rsync -avz /var/lib/docker/ /home/data/docker/lib/

(3)创建Docker配置文件

# mkdir -p /etc/systemd/system/docker.service.d/ 
# vim /etc/systemd/system/docker.service.d/devicemapper.conf
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd  --graph=/home/data/docker/lib/

(4)重启Docker服务

# systemctl daemon-reload 
# systemctl restart docker

(5)查看现在容器存放的目录

# docker info | grep "Dir"
 Docker Root Dir: /home/data/docker/lib

docker服务修改默认存储路径,并迁移原有的容器

1.关闭docker中所有的容器

docker stop $(docker ps -a -q)

2.关闭docker服务

sudo systemctl stop docker.socket
sudo systemctl stop docker.service
sudo systemctl stop docker

3.复制镜像文件

这里以/docker目录为例

cp -an /var/lib/docker/* /docker

4.编辑/etc/docker/daemon.json添加以下参数

{
  "data-root": "/docker"
}

5.重新加载docker,并重启docker服务

sudo systemctl daemon-reload && sudo systemctl restart docker

6.检查是否更换路径

docker info 查看Docker Root Dir的参数是否为更新后的路径

总结

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

相关文章

  • docker搭建Mycat实现读写分离的项目实践

    docker搭建Mycat实现读写分离的项目实践

    本文主要介绍了docker搭建Mycat实现读写分离的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • springboot整合docker部署实现两种构建Docker镜像方式

    springboot整合docker部署实现两种构建Docker镜像方式

    这篇文章主要介绍了springboot整合docker部署实现两种构建Docker镜像方式,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-04-04
  • idea 连接远程 docker 并部署项目到 docker的过程

    idea 连接远程 docker 并部署项目到 docker的过程

    这篇文章主要介绍了idea连接远程docker并部署项目到docker,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-10-10
  • 使用Docker安装和配置 MySQL 数据库的过程详解

    使用Docker安装和配置 MySQL 数据库的过程详解

    本文将介绍如何使用Docker来安装和配置MySQL数据库,以便在开发和测试环境中快速搭建MySQL实例,本文也是介绍两种方式进行分别是“使用镜像安装”、“使用Docker Compose安装”,感兴趣的朋友一起看看吧
    2023-12-12
  • 详解docker 允许主机ssh连接到docker容器中

    详解docker 允许主机ssh连接到docker容器中

    本篇文章主要介绍了详解docker 允许主机ssh到docker容器中,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • 详解docker nginx 容器启动挂载到本地

    详解docker nginx 容器启动挂载到本地

    这篇文章主要介绍了详解docker nginx 容器启动挂载到本地,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Docker网络原理及自定义网络详细解析

    Docker网络原理及自定义网络详细解析

    一般使用自定义网络,自定义网络使用network创建,创建时可以指定子网网段及网关等信息,在创建并启动容器时指定使用的网络,今天通过本文给大家介绍Docker网络原理及自定义网络的相关知识,感兴趣的朋友一起看看吧
    2021-05-05
  • Docker容器在系统启动时自动运行配置方法

    Docker容器在系统启动时自动运行配置方法

    docker容器化可以使得环境相对独立,减少污染,这篇文章主要给大家介绍了关于Docker容器在系统启动时自动运行配置的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • Docker下redis的主从配置教程详解

    Docker下redis的主从配置教程详解

    这篇文章主要介绍了Docker下redis的主从配置,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • Docker 自定义Dev环境并部署php

    Docker 自定义Dev环境并部署php

    这篇文章主要介绍了Docker 自定义Dev环境(部署PHP),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-01-01

最新评论