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

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.lryc.cn/news/605776.html

相关文章:

  • npm从入门到精通一篇全
  • 蚂蚁财富招Java高级研发
  • java笔记——ConcurrentLinkedQueue
  • LangGraph底层原理与基础应用入门
  • Visual Studio调试技巧与函数递归详解
  • ADW300 物联网仪表:引领能源计量智能化变革
  • 电力系统功率与同步发电机运行特性详解
  • Qwen3-30B-A3B-Thinking-2507 推理模型深度评测
  • 【笔记】热力学定律推导(6)热力学第二定律推导
  • LaTeX 表格制作全面指南
  • 开发指南126-参数管理
  • C++:结构体(Structure)
  • 2025虚幻5光明之魂开发思考1——借鉴软件工程
  • React Filber及核心原理
  • 以AI大模型重构教育新生态,打造“教-学-练-辅-评”一体化智能平台
  • 澳交所技术重构窗口开启,中资科技企业如何破局?——从ASX清算系统转型看跨境金融基础设施的赋能路径
  • matlab - 算4个数的加减法
  • [mind-elixir]Mind-Elixir 的交互增强:单击、双击与鼠标 Hover 功能实现
  • 协同测试总结(电台/WIFI/ID/固定端口设置和开机自启)
  • CentOS 6.10 上安装 GCC 7+
  • PHP 与 MySQL 详解实战入门(1)
  • PHP 5.5 Action Management with Parameters (English Version)
  • 通义千问Qwen3-30B-A3B-Thinking-2507技术解析:推理模型的工程实践突破
  • 常见的中间件漏洞如tomcat,weblogic,jboss,apache靶场攻略
  • 基于瑞芯微SoC的产品开发流程详解
  • 18650圆柱电池自动面垫机:自动化生产的效率革命
  • 人工智能之数学基础:频率和概率之间的关系
  • Java项目:基于SSM框架实现的小区物业管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告+任务书+远程部署】
  • JS常见问题
  • BatchNorm 一般放在哪里?