Volume

Directory mounted into a Pod's containers, ephemeral with the Pod unless backed by a persistent claim.

Provider
k8s
Category
Data
Properties · 1 set by this component
propertytypevaluesrequiredkind defaultthis component
emptyDirMedium · component propertyenumnode-disk | memorynonode-diskinherited
encryptionAtRestboolean—no—inherited
iopsinteger—no—inherited
lifetime · component propertyenumephemeral | persistentnoephemeralinherited
managedboolean—nofalse▸ false
mediaTypeenumssd | hddno—inherited
redundancyenumlocal | zonal | regionalno—inherited
sizeGibinteger—no—inherited
snapshotsboolean—nofalseinherited
survivesContainerRestart · component propertyboolean—notrueinherited
survivesPodDeletion · component propertyboolean—nofalseinherited
volumeSource · component propertyenumempty-dir | host-path | config-map | secret | downward-api | projected | persistent-volume-claim | nfs | iscsi | local | image | csino—inherited
Rules that apply · 0

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

No rule reads this kind yet. That is a gap, not a guarantee.
Use it in a design
nodes:
  - { id: "volume", component: "k8s-volume" }
Other Block storage volume products · 28
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# Kubernetes Volume: a directory mounted into a Pod's containers. Per "Volumes" an ephemeral volume
# lives exactly as long as its Pod and is destroyed with it, while a volume backed by a
# PersistentVolumeClaim outlives the Pod; data in any volume survives a container crash or restart.
# An emptyDir is stored on whatever medium backs the node unless emptyDir.medium is set to Memory.
schemaVersion: "1"
type: "component"
id: "k8s-volume"
kind: "block-storage"
provider: "k8s"
docs: "https://kubernetes.io/docs/concepts/storage/volumes/"
defaults:
  managed: false
properties:
  lifetime:
    type: "enum"
    values: ["ephemeral", "persistent"]
    default: "ephemeral"
  volumeSource:
    type: "enum"
    values: ["empty-dir", "host-path", "config-map", "secret", "downward-api", "projected", "persistent-volume-claim", "nfs", "iscsi", "local", "image", "csi"]
  emptyDirMedium:
    type: "enum"
    values: ["node-disk", "memory"]
    default: "node-disk"
  survivesContainerRestart:
    type: "boolean"
    default: true
  survivesPodDeletion:
    type: "boolean"
    default: false

The same page as markdown, for an agent: /catalogue/components/k8s-volume.md