Skip to content

EmptyDir Volume

An EmptyDir Volume is an ephemeral storage type in Kubernetes^[400-devops__06-Kubernetes__k8s-ithelp__Day16__README.md]. When a Pod is assigned to a node, Kubernetes creates an empty directory for the emptyDir volume^[400-devops__06-Kubernetes__k8s-ithelp__Day16__README.md].

This volume is initially empty^[400-devops__06-Kubernetes__k8s-ithelp__Day16__README.md]. It is shared among all containers running within the same Pod^[400-devops__06-Kubernetes__k8s-ithelp__Day16__README.md]. The lifecycle of this volume is strictly tied to the lifecycle of the Pod: it is created when the Pod is created and deleted when the Pod is removed^[400-devops__06-Kubernetes__k8s-ithelp__Day16__README.md].

Use Cases

EmptyDir is typically used for scenarios that require temporary disk space or need to share data between containers in the same Pod:

  • Temporary Storage: It is often used for temporary storage or caching data^[400-devops__06-Kubernetes__k8s-ithelp__Day16__README.md].
  • Data Sharing: It allows files to be shared between different containers within the Pod^[400-devops__06-Kubernetes__k8s-ithelp__Day16__README.md].

Comparison with Other Volumes

Unlike [[PersistentVolume]], an EmptyDir does not persist data after the Pod is terminated^[400-devops__06-Kubernetes__k8s-ithelp__Day16__README.md].

While the gitRepo Volume type is built upon emptyDir and can clone data into the directory at the start of a Pod's lifecycle, the base EmptyDir starts completely empty^[400-devops__06-Kubernetes__k8s-ithelp__Day16__README.md].

Configuration

To use an EmptyDir, it must be defined in the .spec.volumes section of a Pod specification and mounted in the .spec.containers[*].volumeMounts section^[400-devops__06-Kubernetes__k8s-ithelp__Day16__README.md].

Sources

  • 400-devops__06-Kubernetes__k8s-ithelp__Day16__README.md