Files
nexus/wiki/concepts/emptyDir-Volume.md

1.9 KiB
Raw Blame History

title, type, tags, last_updated
title type tags last_updated
emptyDir Volume concept
Kubernetes
Container
Storage
Security
2026-04-24

Definition

emptyDir Volume 是 Kubernetes 中的一种临时存储卷类型,在 Pod 被调度到节点时自动创建,挂载到容器指定路径。当 Pod 从节点移除或被删除时emptyDir 卷中的数据会被永久删除。

Use Case from CTP Topic 49

在容器安全上下文中,ctp-topic-49-container-lifecycle-hardening-standards 推荐使用 emptyDir volume 替代 hostPath 来挂载临时文件系统(如 /tmp原因

  1. 数据隔离emptyDir 存储在节点上的容器运行时目录中,不与其他 Pod 共享
  2. 自动清理Pod 删除时数据自动清理,防止敏感信息残留
  3. 安全性优于 hostPathhostPath 直接访问宿主机文件系统,误用可能导致容器逃逸
  4. 适合临时文件/tmp 等仅在 Pod 运行期间需要的临时存储

Configuration Example

volumes:
  - name: tmp-storage
    emptyDir:
      medium: Memory        # 可选:存储在内存中(更安全)
      sizeLimit: 100Mi     # 可选:限制大小

emptyDir vs hostPath

特性 emptyDir hostPath
数据持久性 Pod 生命周期 节点持久
存储位置 节点容器运行时目录 宿主机指定路径
Pod 删除后 自动清理 保留
安全性 隔离,较安全 直接访问宿主机,有风险
适用场景 临时文件、缓存 日志挂载、配置文件

Relationship to Container Security

emptyDir volume 是 Container-Lifecycle-Hardening 中"使用空卷替代主机路径挂载敏感临时文件"标准的具体实现。与 Pod-Security-Context 的 readOnlyRootFilesystem 配合使用,可最大化容器文件系统安全。

Sources