Docs / Containers & Docker / Docker Volume Management

Docker Volume Management

By Admin · Feb 25, 2026 · Updated Apr 23, 2026 · 27 views · 1 min read

Why Volumes?

Container filesystems are ephemeral — data is lost when a container is removed. Volumes provide persistent storage that survives container lifecycle changes.

Types of Storage

  • Volumes — managed by Docker, stored in /var/lib/docker/volumes/
  • Bind mounts — map a host directory directly into the container
  • tmpfs mounts — stored in memory only (temporary data)

Volume Commands

# Create a volume
docker volume create mydata

# List volumes
docker volume ls

# Inspect a volume
docker volume inspect mydata

# Remove a volume
docker volume rm mydata

# Remove all unused volumes
docker volume prune

Using Volumes

# Named volume
docker run -d -v mydata:/var/lib/mysql mariadb:11

# Bind mount (host directory)
docker run -d -v /home/user/app:/var/www/html nginx

# Read-only mount
docker run -d -v /etc/nginx/conf.d:/etc/nginx/conf.d:ro nginx

Backup and Restore

# Backup volume to tar
docker run --rm -v mydata:/data -v $(pwd):/backup alpine \
  tar czf /backup/mydata-backup.tar.gz -C /data .

# Restore from tar
docker run --rm -v mydata:/data -v $(pwd):/backup alpine \
  tar xzf /backup/mydata-backup.tar.gz -C /data

Was this article helpful?