Skip to main content
List all Docker volumes across machines in the cluster.

Usage

uc volume ls [flags]
Alias: uc volume list

Flags

-m, --machine
string[]
Filter volumes by machine name or ID. Can be specified multiple times or as a comma-separated list. Default is to include all machines.
-q, --quiet
Only display volume names (useful for scripting).

Output

The command displays a table with:
  • NAME - Volume name
  • DRIVER - Volume driver (usually local)
  • MACHINE - Machine where the volume exists

Examples

List all volumes

uc volume ls
Example output:
NAME            DRIVER   MACHINE
postgres-data   local    vps1
app-uploads     local    vps1
redis-data      local    vps2

List volumes on a specific machine

uc volume ls -m vps1
Output:
NAME            DRIVER   MACHINE
postgres-data   local    vps1
app-uploads     local    vps1

List volumes on multiple machines

uc volume ls -m vps1,vps2

List volume names only

Useful for scripts:
uc volume ls -q
Output:
postgres-data
app-uploads
redis-data

Use with Scripts

List all volumes and process them:
for vol in $(uc volume ls -q); do
  echo "Found volume: $vol"
done
Find volumes on a specific machine:
uc volume ls -m vps1 -q

Understanding the Output

Volume Names

Volumes are identified by name. The same volume name can exist on multiple machines (they’re independent volumes).

Volume Driver

Most volumes use the local driver, which stores data in a directory on the machine. Other drivers (like NFS) may be available depending on what’s installed.

Machine Location

Shows which machine hosts the volume. Containers using this volume must run on this machine.

Use Cases

Check Available Storage

See what volumes exist before creating a new service:
uc volume ls

Verify Volume Creation

After creating a volume, confirm it exists:
uc volume create mydata -m vps1
uc volume ls | grep mydata

Find Volumes by Machine

Before removing a machine, check what volumes it has:
uc volume ls -m vps1

Build docs developers (and LLMs) love