Creating volumes


This page explains how to create Volume resources in your cluster. For more details, see the Kubernetes documentation about Volumes .

Using Volumes with Deployments

You can create a Deployment of Pods where each Pod contains one or more Volumes. The following Deployment manifest describes a Deployment of three Pods that each have an emptyDir Volume .

In this example:

  • The metadata: name field specifies a Deployment named volumes-example-deployment .
  • The Pod template specification includes a volumes field that describes an emptyDir volume named cache-volume .
  • The container specification includes a volumeMounts: field that specifies that the Volume named cache-volume is mounted at the file path /cache .
  • The manifest file is named volumes-demo.yaml .
  apiVersion 
 : 
  
 apps/v1 
 kind 
 : 
  
 Deployment 
 metadata 
 : 
  
 name 
 : 
  
 volumes-example-deployment 
 spec 
 : 
  
 replicas 
 : 
  
 3 
  
 selector 
 : 
  
 matchLabels 
 : 
  
 app 
 : 
  
 demo 
  
 template 
 : 
  
 metadata 
 : 
  
 labels 
 : 
  
 app 
 : 
  
 demo 
  
 spec 
 : 
  
 containers 
 : 
  
 - 
  
 name 
 : 
  
 test-container 
  
 image 
 : 
  
 us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0 
  
 volumeMounts 
 : 
  
 - 
  
 mountPath 
 : 
  
 /cache 
  
 name 
 : 
  
 cache-volume 
  
 volumes 
 : 
  
 - 
  
 name 
 : 
  
 cache-volume 
  
 emptyDir 
 : 
  
 {} 
 

To create a Deployment from this manifest file, run the following command:

 kubectl  
apply  
-f  
volumes-demo.yaml 

Verify that your Deployment is running correctly and has the expected Volume with this command:

 kubectl  
describe  
pods  
volumes-example-deployment 

This prints information about each of the three Pods in the Deployment. The output shows that each Pod has a container, test-container, with the /cache mount:

 Mounts:
  /cache from cache-volume (rw) 

The output also shows that each Pod contains a Volume named cache-volume :

 Volumes:
  cache-volume:
    Type:    EmptyDir (a temporary directory that shares a pod's lifetime) 

For more information about creating Deployments, refer to Creating a Deployment .

What's next

Design a Mobile Site
View Site in Mobile | Classic
Share by: