Using volumes in Kubernetes is surprisingly complex. Create a Persistent Volume along with a Persistent Volume Claim that is referenced in the volume section of a PodSpec which in turn is referenced in a volume mount in a container. Sure, there are good reasons for doing it this way, but it is all rather a lot for a developer who just wants to read files from an NFS server!
Just like in Kubernetes, Humanitec allows different people to worry about dependence on a volume (the developer) and providing the actual volume (usually an ops person.) Humanitec however also takes care of the pesky Persistent Volume Claims that trip up developers and ops people alike.
The volume resource itself is defined in a similar way to tell Humanitec how to provision a database, S3 bucket or DNS name. You define a resource and how it should be matched to a particular environment. This allows you to easily back different environments with different volumes or even share the same volume across environments. This means developers don't need to worry about where the volumes come from, while ops can ensure that data stays in the environment that they intend.
How to get started
Try it out for yourself. We created a tutorial for setting up an existing NFS server as a volume.