1. Measure Docker’s actual usage
Docker Desktop stores Linux containers and images inside a disk image. A large apparent Docker.raw size is not necessarily the amount of Mac storage occupied: sparse files can report a maximum size larger than their allocated space. Use Docker Desktop’s storage settings and compare available Mac space before choosing a target.
With Docker running, the read-only command docker system df -v reports detailed usage by object type. Also inspect docker container ls -a and docker image ls, which list containers and images without deleting them. Confirm you are connected to the intended Docker context, especially if you also work with remote engines.
2. Separate rebuildable objects from retained data
A downloaded image may be easy to fetch again. A locally built image may require source files, build secrets and access to an old dependency registry. A stopped container can still hold files in its writable layer. “Stopped” describes its running state; it does not establish that its contents are disposable.
Volumes commonly hold databases, uploads and other persistent state. Identify the application behind each volume before deleting anything. If the data matters, use the application’s backup procedure and verify the backup. Copying a database’s live files is not automatically an application-consistent backup.
3. Review objects in Docker Desktop
Open the Containers view, inspect a project you no longer use, and check its mounts and retained files before selecting its removal action. Then review the Images view for images you can recreate. Docker Desktop’s interface and available controls vary by version, so read each confirmation for the objects affected.
Treat the Volumes view as a separate review. Docker documents inspection and export options there; some actions have account or subscription requirements. A volume named after an abandoned Compose project may still contain your only local database. Keep it until the data is backed up or explicitly no longer needed.
4. Understand prune before using it
Docker’s system prune operation removes several kinds of unused objects, including stopped containers, dangling images, unused networks and build cache. Additional flags broaden its reach. This guide deliberately uses inspection and selected removal instead of offering a bulk prune command to copy without reviewing the consequences.
Build cache can save substantial work on the next build. Decide whether recovering that space is worth slower builds and possible downloads. If you choose a prune workflow, consult the official reference for your installed version, check filters and confirmation text, and avoid assuming “unused” means “unimportant.”
5. Check both Docker and the Mac afterward
Repeat docker system df -v and compare available Mac space after Docker finishes reclaiming storage. Host reclamation and Docker object totals answer different questions. Deleting files inside a running container may not immediately shrink the disk image. Do not delete Docker.raw or reduce its maximum size as a casual cleanup shortcut.
Start a retained development stack and check its data. If Docker remains the main storage user, plan retention for old images and build cache around your normal workload. If another folder is larger, investigate it separately; a general disk scan helps locate the source but cannot decide which Docker database you should keep.
References & further reading
These guides combine the linked official guidance with ClearDisk’s documented behavior. Your files and app settings determine the right next step.