docker 启动 solo 一天不到占用磁盘 50G

本贴最后更新于 2071 天前,其中的信息可能已经天翻地覆

该虚拟机只有容器 一个是 maria db 另外一个 solo ,光 solo 就占用了 46 个 G 的磁盘。

[root@VM_0_9_centos /]# df -hl Filesystem Size Used Avail Use% Mounted on /dev/vda1 50G 50G 0 100% / devtmpfs 909M 0 909M 0% /dev tmpfs 920M 24K 920M 1% /dev/shm tmpfs 920M 90M 831M 10% /run tmpfs 920M 0 920M 0% /sys/fs/cgroup tmpfs 184M 0 184M 0% /run/user/0 overlay 50G 50G 0 100% /var/lib/docker/overlay2/23b2efcf232eff6293a5e957f20dd865568ea5e5d5acf5ed49445eb1340c8713/merged overlay 50G 50G 0 100% /var/lib/docker/overlay2/f8e8269fcffdc93a186a013b910430465bff2c691d147f5b81b7dd8bb0b900a0/merged [root@VM_0_9_centos containers]# du -sh * 46G 96d51a03bc52d28c741d11a90571832718f8ae547d179992ca7b06dc814b7d8e 4.7M b52aebd18dab5a7fb3d4dad6197ffd2bfd9cc549dac041ce773270acbc8b491d [root@VM_0_9_centos containers]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 96d51a03bc52 b3log/solo "java -cp lib/*:. or…" 14 hours ago Up 14 hours solo b52aebd18dab mariadb "docker-entrypoint.s…" 4 days ago Up 24 hours 0.0.0.0:3306->3306/tcp mariadb

删除 solo 容器后存储又恢复

[root@VM_0_9_centos containers]# docker rm -f solo solo [root@VM_0_9_centos containers]# [root@VM_0_9_centos containers]# df -hl Filesystem Size Used Avail Use% Mounted on /dev/vda1 50G 4.2G 43G 9% / devtmpfs 909M 0 909M 0% /dev tmpfs 920M 24K 920M 1% /dev/shm tmpfs 920M 89M 831M 10% /run tmpfs 920M 0 920M 0% /sys/fs/cgroup tmpfs 184M 0 184M 0% /run/user/0 overlay 50G 4.2G 43G 9% /var/lib/docker/overlay2/23b2efcf232eff6293a5e957f20dd865568ea5e5d5acf5ed49445eb1340c8713/merged

启动命令

docker run --detach --name solo --network=host --env RUNTIME_DB="MYSQL" --env JDBC_USERNAME="root" --env JDBC_PASSWORD="xxxx" --env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" --env JDBC_URL="jdbc:mysql://127.0.0.1:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC" b3log/solo --listen_port=8080 --server_scheme=http --server_host=www.xxxxx.com --server_port=8080

怎么解决这个问题?除了定时去删除启动容器?

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • T-Aoker via macOS

    那个是啥文件?

    1 回复
  • 需要看一下具体的日志内容,可以用 docker logs solo 看下。

    1 回复
  • Archer1A
    作者

    那个文件夹是对应容器的 容器在疯狂输出日志

  • Archer1A
    作者

    Caused by: java.io.IOException: Socket is closed
    at com.mysql.cj.protocol.AbstractSocketConnection.getMysqlInput(AbstractSocketConnection.java:72)
    at com.mysql.cj.protocol.a.NativeProtocol.clearInputStream(NativeProtocol.java:804)
    ... 157 more
    [ERROR]-[2019-12-11 17:48:46]-[org.b3log.latke.repository.jdbc.JdbcRepository:458]: Query failed
    com.mysql.cj.jdbc.exceptions.PacketTooBigException: Packet for query is too large (4,177 > 2,048). You can change this value on the server by setting the 'max_allowed_packet' variable.
    Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failure

    The last packet successfully received from the server was 15 milliseconds ago. The last packet sent successfully to the server was 31 milliseconds ago.
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)
    at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:105)
    at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:151)
    at com.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167)
    at com.mysql.cj.protocol.a.NativeProtocol.clearInputStream(NativeProtocol.java:808)
    at com.mysql.cj.protocol.a.NativeProtocol.sendCommand(NativeProtocol.java:623)
    at com.mysql.cj.protocol.a.NativeProtocol.sendQueryPacket(NativeProtocol.java:941)
    at com.mysql.cj.NativeSession.execSQL(NativeSession.java:1075)
    at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:930)
    ... 153 more

    1 回复
  • 数据库连不上,导致日志太多。可以考虑配置下 log4j 滚动日志。

  • 限制 docker 日志大小吧,不管它后面出什么问题,都不用怕了huaji 。前天我也是出现这个问题,但是我跟你产生的原因的不一样。记一次因 docker 日志占满磁盘的问题,直接拉到后面有怎么限制 docker 日志大小的示例

  • 这个问题我遇到过,就是错误日志太多了,占满磁盘,你要先通过 docker logs solo 查看日志,找到程序的问题并解决,就好了。

  • LiuKang

    docker run --detach --name solo -p 80:80 ^ --env RUNTIME_DB="MYSQL" ^ --env JDBC_USERNAME="root" ^ --env JDBC_PASSWORD="123456" ^ --env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" ^ --env JDBC_URL="jdbc: ^ b3log/solo --listen_port=80 --server_scheme=http --server_host=www.kanglucky.cn
    f90dbe7d287e7b9f076fa1b2550903c4ddec7ad2815a46c23aa039ad7922debb

    C:\WINDOWS\system32>docker ps
    CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    c4db783e5c50 mysql:5.6 "docker-entrypoint.s…" 15 hours ago Up 2 hours 0.0.0.0:3306->3306/tcp mysql

    C:\WINDOWS\system32>docker ps -a
    CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    f90dbe7d287e b3log/solo "java -cp lib/*:. or…" 13 hours ago Exited (255) 16 seconds ago solo
    c4db783e5c50 mysql:5.6 "docker-entrypoint.s…" 15 hours ago Up 2 hours 0.0.0.0:3306->3306/tcp mysql

    为什么我安装并启动成功 solo 但 docker ps 下没有查看到 solo 呢?STATUS 为 Exited???

请输入回帖内容 ...

推荐标签 标签

  • PostgreSQL

    PostgreSQL 是一款功能强大的企业级数据库系统,在 BSD 开源许可证下发布。

    22 引用 • 22 回帖 • 3 关注
  • Firefox

    Mozilla Firefox 中文俗称“火狐”(正式缩写为 Fx 或 fx,非正式缩写为 FF),是一个开源的网页浏览器,使用 Gecko 排版引擎,支持多种操作系统,如 Windows、OSX 及 Linux 等。

    7 引用 • 30 回帖 • 367 关注
  • 钉钉

    钉钉,专为中国企业打造的免费沟通协同多端平台, 阿里巴巴出品。

    15 引用 • 67 回帖 • 259 关注
  • Kubernetes

    Kubernetes 是 Google 开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。

    118 引用 • 54 回帖 • 9 关注
  • Vim

    Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。

    29 引用 • 66 回帖
  • 职场

    找到自己的位置,萌新烦恼少。

    127 引用 • 1708 回帖
  • 反馈

    Communication channel for makers and users.

    120 引用 • 906 回帖 • 279 关注
  • webpack

    webpack 是一个用于前端开发的模块加载器和打包工具,它能把各种资源,例如 JS、CSS(less/sass)、图片等都作为模块来使用和处理。

    42 引用 • 130 回帖 • 253 关注
  • 黑曜石

    黑曜石是一款强大的知识库工具,支持本地 Markdown 文件编辑,支持双向链接和关系图。

    A second brain, for you, forever.

    27 引用 • 276 回帖 • 1 关注
  • Spark

    Spark 是 UC Berkeley AMP lab 所开源的类 Hadoop MapReduce 的通用并行框架。Spark 拥有 Hadoop MapReduce 所具有的优点;但不同于 MapReduce 的是 Job 中间输出结果可以保存在内存中,从而不再需要读写 HDFS,因此 Spark 能更好地适用于数据挖掘与机器学习等需要迭代的 MapReduce 的算法。

    74 引用 • 46 回帖 • 563 关注
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3203 引用 • 8217 回帖 • 1 关注
  • Sphinx

    Sphinx 是一个基于 SQL 的全文检索引擎,可以结合 MySQL、PostgreSQL 做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。

    1 引用 • 223 关注
  • Gitea

    Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证。

    5 引用 • 16 回帖 • 1 关注
  • Vditor

    Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React 和 Angular。

    378 引用 • 1866 回帖 • 2 关注
  • ReactiveX

    ReactiveX 是一个专注于异步编程与控制可观察数据(或者事件)流的 API。它组合了观察者模式,迭代器模式和函数式编程的优秀思想。

    1 引用 • 2 回帖 • 183 关注
  • AWS
    11 引用 • 28 回帖 • 3 关注
  • 生活

    生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。

    230 引用 • 1432 回帖
  • 国际化

    i18n(其来源是英文单词 internationalization 的首末字符 i 和 n,18 为中间的字符数)是“国际化”的简称。对程序来说,国际化是指在不修改代码的情况下,能根据不同语言及地区显示相应的界面。

    8 引用 • 26 回帖 • 1 关注
  • Follow
    4 引用 • 12 回帖 • 11 关注
  • 运维

    互联网运维工作,以服务为中心,以稳定、安全、高效为三个基本点,确保公司的互联网业务能够 7×24 小时为用户提供高质量的服务。

    151 引用 • 257 回帖
  • WordPress

    WordPress 是一个使用 PHP 语言开发的博客平台,用户可以在支持 PHP 和 MySQL 数据库的服务器上架设自己的博客。也可以把 WordPress 当作一个内容管理系统(CMS)来使用。WordPress 是一个免费的开源项目,在 GNU 通用公共许可证(GPLv2)下授权发布。

    46 引用 • 114 回帖 • 160 关注
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    554 引用 • 675 回帖
  • 安全

    安全永远都不是一个小问题。

    200 引用 • 818 回帖 • 2 关注
  • golang

    Go 语言是 Google 推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发 Go,是因为过去 10 多年间软件开发的难度令人沮丧。Go 是谷歌 2009 发布的第二款编程语言。

    500 引用 • 1396 回帖 • 254 关注
  • 程序员

    程序员是从事程序开发、程序维护的专业人员。

    593 引用 • 3533 回帖 • 2 关注
  • Access
    1 引用 • 3 回帖 • 2 关注
  • TextBundle

    TextBundle 文件格式旨在应用程序之间交换 Markdown 或 Fountain 之类的纯文本文件时,提供更无缝的用户体验。

    1 引用 • 2 回帖 • 82 关注