docker引擎常用目录文件详解

发布于:2025-03-10 ⋅ 阅读:(12) ⋅ 点赞:(0)

docker引擎常用目录文件详解

docker容器目录

路径/var/lib/docker/containers/<容器ID>
Docker中,每个容器都有一个对应的目录位于/var/lib/docker/containers/<容器ID>下。这个目录包含与该容器相关的各种文件和子目录,这些文件记录了容器的状态、日志和其他重要信息。

/var/lib/docker/containers/<容器ID>/
├── config.v2.json (容器的主要配置文件,包含了容器的所有配置信息。包括容器的启动命令、环境变量、挂载点(volumes)、网络设置等)
├── hostconfig.json (包含容器的主机配置信息。包括资源限制、设备映射、重启策略等)
├── hostname (包含容器的主机名)
├── hosts (包含容器的/etc/hosts文件的内容。用于解析容器内部的主机名到IP地址的映射)
├── resolv.conf (包含容器的DNS配置)
├── checkpoint (包含容器的检查点数据,如果启用了容器检查点功能)
│   └── ...
└── shm (包含共享内存shared memory的挂载点,用于容器之间的共享内存通信)
    └── ... (临时文件)

docker容器引擎数据目录

路径/var/lib/docker
目录是Docker存储其所有数据的地方,包括镜像、容器、卷、网络配置等。

/var/lib/docker/
├── containers (包含每个容器的相关文件和配置)
│   ├── <container_id>
│   │   ├── config.v2.json
│   │   ├── hostconfig.json
│   │   ├── resolv.conf
│   │   ├── log.json
│   │   └── ...
├── image (包含Docker镜像的相关文件和元数据。基于镜像构建时使用的不同文件驱动系统,放置在不同目录下)
│   ├── aufs
│   ├── overlay2
├── network (包含Docker网络的相关文件和配置)
│   ├── files (存储网络配置文件)
│   │   ├── local-kv.db (存储Docker网络的键值对数据库)
│   └── netfilter (存储与网络过滤相关的文件)
├── plugins (包含Docker插件的相关文件和配置)
│   ├── <plugin_id>
│   │   └── ...
├── swarm (包含Docker Swarm模式的相关文件和配置)
├── tmp
│   └── ...
├── trust
│   └── ...
├── volumes (包含Docker卷的相关文件和配置)
│   ├── <volume_id> (每个卷有一个独立的子目录,名称为卷ID)
│   │   └── ...
└── buildkit (用于存储BuildKit构建器的相关文件和配置)
    └── ...

容器运行时目录

路径/var/lib/containerd
目录是Containerd存储其状态和元数据的地方。Containerd是一个行业标准的容器运行时,专注于简单、稳定和可移植性。它负责管理容器的生命周期,包括镜像管理、存储、网络等。Docker引擎在启动时会在该目录下自动生成相关文件。

/var/lib/containerd/
├── io.containerd.content.v1.content
│   └── blobs
│       └── sha256
│           └── ... (包含以SHA-256哈希值命名的镜像层blob格式文件,存储镜像实际内容)
├── io.containerd.metadata.v1.bolt
│   └── meta.db (元数据库BoltDB文件,用于存储Containerd的元数据信息,如容器、镜像、快照等的状态和配置)
├── io.containerd.snapshotter.v1.aufs
│   ├── snapshots
│   └── ... (使用AUFS快照器的容器快照)
├── io.containerd.snapshotter.v1.native
│   ├── snapshots
│   └── ... (使用native快照器的容器快照)
├── io.containerd.snapshotter.v1.overlayfs
│   ├── snapshots
│   └── ... (使用overlayfs快照器的容器快照)
└── tmpmounts
    └── ... (包含临时挂载的文件系统,通常在容器创建或删除过程中使用)