解决docker数据文件过大导致根磁盘满的问题
背景:
最近在线上使用的docker主机发现根目录容量快满了,一番查找,发现是docker的data文件过大了。 我们知道docker数据默认是存放在/var/lib/docker下的,我们可以在启动时用-g --graph=""参数,把数据目录更改到其他容量大的地方去。但是对于在使用中的docker来说,直接修改这个目录路径,会导致镜像和容器都丢失了,所以修改参数这个方法适用于初始化docker的时候使用。
对于又想解决根分区容量满,又不想更改数据存储路径的我来说,我不想更改任何docker的参数和数据,所以我在自己的虚机机环境上尝试把这些数据迁移到容量较大的磁盘上去,再用链接的方式把数据链接到原来的位置,保证环境尽可能不变动。
操作:
1:关闭docker容器和docker进程:
# /etc/init.d/docker stop
2:迁移数据:(假设我要迁移到/mnt/docker)
# mv /var/lib/docker /mnt/
3:制作目录链接
# ln -s /mnt/docker /var/lib/docker # cd /var/lib # ll lrwxrwxrwx 1 root root 11 Apr 13 10:52 docker -> /mnt/docker
4:启动docker和容器:
# /etc/init.d/docker start
该实验在我的环境中测试有效。应该没有什么大问题,如果有什么忽略的地方,请大家指正!也希望大家多多支持我们。
相关推荐
-
Docker占满磁盘空间的问题解决办法
通过命令可以观察到/var/lib/Docker目录很大,我的主机只有20G,这个目录占了18G:原因是devicemapper的空间设的太大,通过docker info打印的Data Space Total参数可以看到,默认是107.4G. 思路如下: 备份当前容器.镜像: 删除/var/lib/docker目录: 使用dd命令重设大小: 恢复容器.镜像: 工具: 需要额外空间保存备份文件,可以挂载一个u盘或者云盘. docker save 可以导出镜像 tar文件: docker expor
-
解决docker数据文件过大导致根磁盘满的问题
背景: 最近在线上使用的docker主机发现根目录容量快满了,一番查找,发现是docker的data文件过大了. 我们知道docker数据默认是存放在/var/lib/docker下的,我们可以在启动时用-g --graph=""参数,把数据目录更改到其他容量大的地方去.但是对于在使用中的docker来说,直接修改这个目录路径,会导致镜像和容器都丢失了,所以修改参数这个方法适用于初始化docker的时候使用. 对于又想解决根分区容量满,又不想更改数据存储路径的我来说,我不想更改
-
完美解决因数据库一次查询数据量过大导致的内存溢出问题
刚开始接触项目的实习生,积累经验,欢迎交流 之前做项目,遇到过一次查询数据量过大而导致的内存溢出问题,找了很多办法一直未能实际解决问题, 今天又遇到了,经过前辈的指导,终于解决了问题!! 不过此方法只在DBug启动下有效 以上这篇完美解决因数据库一次查询数据量过大导致的内存溢出问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.
-
Tomcat解决catalina.out文件过大的问题
目录 前言 暴力型 技术型 前言 有用Tomcat的,绝对都会遇到这样一个问题:catalina.out文件过大. 它是Tomcat默认生成的日志文件,会随着时间的推移,逐渐增大,不断的增长,甚至达到几G,几十G的大小.由于文件过大,不仅占系统的存储,我们还将无法使用过常规的编辑工具进行查看,严重影响系统的维护工作. 对此,出现了以下几种解决catalina.out文件过大的方案. 暴力型 除非不需要日志,否则不建议使用 1.手动版 每次监控到tomcat的硬盘空间变小达到阈值,手动登陆服务器,
-
vue打包chunk-vendors.js文件过大导致页面加载缓慢的解决
目录 打包chunk-vendors.js过大导致页面加载缓慢 1.chunk-vendors.js 简介 3.chunk-vendors.js 文件大小分析 3.方式一 4.其他方式 chunk-vendors过大导致首屏加载太慢的优化 1.安装compression-webpack-plugin插件 2.接下来要去修改vue的配置文件 vue.config.js 3.nginx配置 打包chunk-vendors.js过大导致页面加载缓慢 1.chunk-vendors.js 简介 顾名思义
-
antd的select下拉框因为数据量太大造成卡顿的解决方式
相信用过antd的同学基本都用过select下拉框了,这个组件数据量少的时候很好用,但是当数据量大的时候,比如大几百条上千条甚至是几千条的时候就感觉一点都不好用了,卡的我怀疑人生,一点用户体验都没有了. 当然这不是我想去优化它的动力,主要是公司业务人员和后端的同事也无法忍受,于是我只能屈从于他们的淫威.... 想要优化肯定要知道为什么会卡,初步判断就是数据量过大导致渲染option组件的时间过长导致卡顿,于是想要不卡只能限制渲染的数据数量. 我的想法是这样的:任何时候都只渲染前100条数据以保证
-
解决docker磁盘空间不足问题
docker所在服务器,运行了一段时间后,发现服务器磁盘目录快不够用了.通过du -h --max-depth=1 / 逐级目录排查,发现/var/lib/docker目录文件过大.通过以下方法,解决该问题. 转移数据修改docker默认存储位置 有多种方式修改docker默认存储位置. 最好是在docker安装完后,第一时间修改docker默认存储位置为其他大目录或者磁盘中.规避迁移数据过程中造成的风险. - 停止docker服务 systemctl stop docker - 创建新的doc
-
oracle 12c因误删pdb数据文件导致整个数据库打不开的解决方法
前言 最近因为一位同事误删了某个插件数据库(PDB)的数据文件,结果整个数据库,包括容器数据库(CDB),以及其他插件数据库都用不了了.无奈...通过尝试各种方法最终解决了,觉着有必要将解决的过程分享出来,方法大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 方法如下: 1.用sys账号进入实例,可见容器数据库处于mounted状态:插在上面的所有PDB当然也都是mounted. sqlplus sys/pwd@orcl12c as sysdba; 2.试图打开CDB,提示有数据库文件未能
-
解决MySQL数据库意外崩溃导致表数据文件损坏无法启动的问题
问题故障: MySQL数据库意外崩溃,一直无法启动数据库. 报错日志: 启动报错:service mysqld restart ERROR! MySQL server PID file could not be found! Starting MySQL. ERROR! The server quit without updating PID file (/www/wdlinux/mysql/var/iZ2358oz5deZ.pid). 数据库error日志: 200719 22:07:43 I
-
用SQL语句解决mysql导入大数据文件的问题
对于经常使用MYSQL的人来说,phpmyadmin是一个必备的工具.这个工具非常强大,几乎可以完成所有的数据库操作,但是它也有一个弱点,对于往远程服务器上导入较大的数据文件的时候会速度奇慢,甚至出现长期没有响应的情况. 为什么会出现这样的情况呢?当我们选择一个sql数据文件并提交的时候,服务器首先要先把文件上传到服务器,然后才会执行导入代码把数据导入到数据库.我们知道phpmyadmin是通过web方式上传的数据文件,而web方式上传是很不稳定的,尤其是网速慢的时候,这就是为什么我们会有那么多
-
Mysql binlog日志文件过大的解决
目录 1.相关binlog配置 2.binlog相关高级设置 2.1 改变binlog模式 2.2 相关SQL操作binlog 磁盘突然报错使用率过大,排查原因,发现mysql的binlog文件占用过大 命令 ls -l -h mysql-binlog是MySQL数据库的二进制日志,用于记录用户对数据库操作的SQL语句((除了数据查询语句)信息.可以使用mysqlbin命令查看二进制日志的内容. 可以通过设置my.cof配置文件的方式限制binlog文件的输出. 1.相关binlog配置 vim
随机推荐
- 深入理解Angular中的依赖注入
- vue2 中如何实现动态表单增删改查实例
- 系统分配随机密码
- 记一次mariadb数据库无法连接
- 在vista下使用加载项扩展IE7的功能
- IOS 使用NSAssert()和NSParameterAssert调试程序
- Laravel中的Blade模板引擎示例详解
- php摘要生成函数(无乱码)
- android 检测耳机是否插入方法
- 通过BootStrap-select插件 js jQuery控制select属性变化
- node.js中的url.resolve方法使用说明
- 恶意代码与网络安全
- java自带命令行工具jmap、jhat与jinfo的使用实例代码详解
- js使用setTimeout实现定时炸弹的方法
- 跟老齐学Python之私有函数和专有方法
- ORACLE数据库应用开发常见问题及排除
- backdoor病毒珍藏绝密源代码
- JS使用for循环遍历Table的所有单元格内容
- Java线程池的几种实现方法和区别介绍
- C#连接数据库的方法