docker更换默认存储目录、默认存储目录磁盘剩余空间不足,采用软连、换目录、加容量解决

docker更换默认存储目录、默认存储目录磁盘剩余空间不足,采用软连、换目录、加容量解决

操作之前先停止docker服务

systemctl stop docker

以下方法选其中之一

直接切换目录

建议直接使用此方式,或者在docker安装好后,就更改主目录

生产中请注意一定要先备份一份

# 创建一个root目录以外分区的目录
mkdir /home/lib/docker -p
# 迁移数据,路径末尾要加"/"
rsync -avz /var/lib/docker/ /home/lib/docker/

修改docker服务文件

vim /usr/lib/systemd/system/docker.service
# 在ExectStart=/usr/bin/dockerd的后面增加--graph /home/lib/docker

或者修改daemon.json,和修改docker服务文件选一即可

vim /etc/docker/daemon.json
{
   
  "graph": "/home/lib/docker"
}

创建软链接目录

生产中请注意一定要先备份一份



# 创建一个root目录以外分区的目录
mkdir /home/lib/docker -p
# 将数据放到新的存放路径,路径末尾要加"/"
rsync -avz /var/lib/docker/ /home/lib/docker/
# 备份数据,mv还有一个目的是,创建软链接的目录必须不存在
mv /var/lib/docker /tmp/docker_bak
# 创建软链接
ln -s /home/lib/docker /var/lib/docker

当你使用docker pull拉取镜像后,可以通过df -h,查看分区使用情况,会发现/home的Used明显增加

LVM增加容量

适用于硬盘分区为LVM方式,不建议使用此方式。如果是xfs文件系统,还需要将分区格式化,数据即使有备份,也是有误操作的风险的。慎用!!!

# 找一个容量大,且可以被减少容量的分区,这里就以/home为例
xfs文件系统支持扩大容量
ext2/ext3/ext4文件系统支持增大或者减小
# centos默认使用xfs文件系统
df -hT | grep "/dev/sda" | awk '{print $2}'
xfs_growfs /dev/mapper/centos-home
# 酌情调整大小
lvreduce -L -5G /dev/mapper/centos-home 
lvextend -L +5G /dev/mapper/centos-root 
# 应用调整,这里确实也是减少了。我不太能搞懂,所以此方法不建议
xfs_growfs /dev/mapper/centos-home
xfs_growfs /dev/mapper/centos-root

重新加载配置文件

systemctl daemon-reload
systemctl restart docker

检查docker信息

docker info | grep "Dir"
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101768.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker(1)下载安装for mac

    docker(1)下载安装for mac前言Docker提供轻量的虚拟化,你能够从Docker获得一个额外抽象层,你能够在单台机器上运行多个Docker微容器,而每个微容器里都有一个微服务或独立应用,例如你可以将Tomcat运行在一个D

    2022年7月29日
    3
  • docker菜鸟教程linux_linux离线安装docker

    docker菜鸟教程linux_linux离线安装dockerlinux安装和使用docker教程文章目录linux安装和使用docker教程1、docker官网安装地址2、卸载linux系统中的docker3、安装docker4、查看安装docker列表5、启动docker6、设置docker开机启动7、查看docker版本8、docker的image远程仓库地址9、拉去镜像10、启动及常用命令1、docker官网安装地址https://docs.docker.com/engine/install/centos/2、卸载linux系统中的docker

    2022年8月31日
    3
  • jenkinsfile docker_docker build命令详解

    jenkinsfile docker_docker build命令详解前言之前我们用docker手动安装了jenkins环境,在jenkins中又安装了python3环境和各种安装包,如果我们想要在其他3台机器上安装,又是重复操作,重复劳动,那会显得很low,这里可以

    2022年7月29日
    5
  • docker(7)docker-compose容器集群编排「建议收藏」

    docker(7)docker-compose容器集群编排「建议收藏」前言实际工作中我们部署一个应用,一般不仅仅只有一个容器,可能会涉及到多个,比如用到数据库,中间件MQ,web前端和后端服务,等多个容器。我们如果一个个去启动应用,当项目非常多时,就很难记住了,所有

    2022年7月31日
    6
  • docker部署web项目_小钢炮docker安装web

    docker部署web项目_小钢炮docker安装web前言前面我们运行的容器并没有一些什么特别的用处。接下来让我们尝试使用docker构建一个web应用程序。我们将在docker容器中运行一个PythonFlask应用来运行一个web

    2022年7月29日
    2
  • linux上安装Docker(非常简单的安装方法)

    linux上安装Docker(非常简单的安装方法)最近比较有空,大四出来实习几个月了,作为实习狗的我,被叫去研究Docker了,汗汗!Docker的三大核心概念:镜像、容器、仓库镜像:类似虚拟机的镜像、用俗话说就是安装文件。容器:类似一个轻量级的沙箱,容器是从镜像创建应用运行实例,可以将其启动、开始、停止、删除、而这些容器都是相互隔离、互不可见的。仓库:类似代码仓库,是Docker集中存放镜像文件的场所。简单介绍一

    2022年6月9日
    34

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号