当前位置: 首页 > ds >正文

docker运行时目录/var/lib/docker 学习

文章目录

    • 一、整体结构
    • 二、子目录介绍
      • 2.1、/var/lib/docker/builder

Docker 的运行时目录是 Docker 存储容器、镜像、网络配置、数据卷等数据的核心位置,默认路径为 /var/lib/docker;如果不是,请使用 docker info | grep 'Docker Root Dir' 查看。

一、整体结构

/var/lib/docker/
├── builder
├── buildkit
├── containers
├── image
├── logs
├── network
├── overlay2
├── plugins
├── runtimes
├── swarm
├── tmp
├── trust
├── volumes
└── ...

二、子目录介绍

2.1、/var/lib/docker/builder

/var/lib/docker/builder 是 Docker 的构建缓存目录,用于存储 构建镜像时生成的中间层数据。该目录的作用与 Docker 的构建引擎(如 BuildKit)密切相关,通常在使用 docker build 命令时自动生成。
18.09 当前此目录下文件结构如下:

fscache.db 

fscache.db 文件是 Docker 用来存储这些缓存信息的数据库。它记录了关于镜像构建过程中各个步骤的信息,包括哪些文件或数据在之前的构建中已经被缓存,以及如何重新利用这些缓存。

文件内容
fscache.db 文件包含了多个条目,每个条目代表一个特定的缓存项。这些条目可能包括:

  • 缓存键:唯一标识符,用于引用特定的缓存数据。
  • 缓存数据:实际的数据或文件内容,例如从之前的构建步骤中复制的文件。
  • 元数据:关于缓存项的额外信息,如大小、创建时间等。

另外版本还有如下结构:

/var/lib/docker/builder/
├── cache/            # 构建缓存目录(核心部分)
│   ├── buildkit/     # BuildKit 缓存(若启用)
│   └── ...           # 其他构建引擎的缓存
├── metadata/         # 构建元数据(如层哈希、配置)
├── logs/             # 构建日志(部分版本可能有)
└── tmp/              # 临时文件(如层下载缓存)

常使用构建会存在缓存过大的问题,清理办法如下:

# 查看 builder 目录大小
du -sh /var/lib/docker/builder# 清理缓存(需谨慎,会重置构建进度)
docker builder prune
# 或直接删除目录(需停止 Docker 服务)
sudo systemctl stop docker
sudo rm -rf /var/lib/docker/builder/cache/*
sudo systemctl start docker

另外此目录与buildkit 目录关系密切,也与版本迭代相关:

  • Docker 18.09+:引入 BuildKit,/var/lib/docker/builder 成为核心缓存目录。
  • 旧版本(<18.09):可能使用其他路径(如 /var/lib/docker/tmp)存储临时构建数据。
http://www.xdnf.cn/news/16872.html

相关文章:

  • 1 - 视频处理IP核之Video In to AXI4-Stream
  • 汽车线束行业AI智能化MES解决方案:推动智能制造与质量升级
  • 编程语言Java——核心技术篇(六)解剖反射:性能的代价还是灵活性的福音?
  • JVM面试通关指南:内存区域、类加载器、双亲委派与GC算法全解析
  • kafka使用kraft
  • Java设计模式之《命令模式》
  • LeetCode 刷题【23. 合并 K 个升序链表】
  • MongoDB用户认证authSource
  • 17-C语言:第18天笔记
  • AI 类型的 IDE
  • Cesium 快速入门(六)实体类型介绍
  • 【运维基础】Linux 文件系统基本管理
  • 【Leetcode】2683. 相邻值的按位异或
  • 前缀和-1314.矩阵区域和-力扣(LeetCode)
  • C# 枚举器和迭代器(常见迭代器模式)
  • VBA代码解决方案第二十七讲:禁用EXCEL工作簿右上角的关闭按钮
  • ubuntu22.04系统入门 linux入门 简单命令基础复习 实现以及实践
  • 经典屏保问题 - 华为OD机试真题(Java 题解)
  • pytorch程序语句固定开销分析
  • dubbo源码之消费端启动的高性能优化方案
  • 28. 找出字符串中第一个匹配项的下标
  • C++-2025.7.31
  • 1️⃣4️⃣ OOP:类、封装、继承、多态
  • H.266 vs H.265/AV1/H.264:从工程落地看下一代视频系统的技术演进
  • 第三十一篇 AI的“能力考”:模型评估、保存与加载的艺术【总结前面3】
  • MBR与GPT分区表深度解析:硬盘分区该怎么选?
  • pip库版本升级
  • Android Studio 中Revert Commit、Undo Commit 和 Drop Commit 使用场景
  • Android Studio怎么显示多排table,打开文件多行显示文件名
  • 现在有哪些广泛使用的时序数据库?