Remove a Ranch Hand evaluation deployment
Ranch Hand Public Preview provides managed permanent removal for active local WSL Compose deployments. Open Managed deployments, select the data-deletion confirmation, and choose Permanently remove deployment. Ranch Hand verifies the exact ownership marker, transferred-file hashes, and Docker labels before removing the Compose project, persistent volume, dedicated directory, and active inventory state.
Use these manual procedures for retain-data WSL removal or targets whose managed uninstall has not shipped. They remove only target resources whose names, labels, and ownership marker match the original deployment plan.
Before removing anything
- Finish or close any active Ranch Hand operation.
- Export redacted diagnostics and retain the original secret-free plan.
- Choose retain data or permanently delete data. Permanent deletion cannot be undone.
- Match every resource to the plan and Ranch Hand marker or labels. Stop if ownership is missing or ambiguous.
Manual target removal does not erase Ranch Hand's local evidence, so Ranch Hand continues to show that deployment as installed. Managed WSL permanent removal marks its inventory record uninstalled automatically. Do not edit or broadly delete %LOCALAPPDATA%\WranglerLabs\Ranch Hand; it may contain catalogs, journals, verified caches, and backup archives for several targets.
Local Docker Desktop
The managed container is <projectName>-server; the persistent volume is the plan's dataVolume. Confirm both carry wranglerlabs.ranch-hand.managed=true and the expected deployment identity.
docker inspect <projectName>-server
docker volume inspect <dataVolume>
docker rm --force <projectName>-server
# Permanent data deletion only:
docker volume rm <dataVolume>To retain data, keep the volume and all Ranch Hand backup archives. Review stopped rollback-pool containers and volumes separately; they are not automatically disposable when the active container is removed.
Local WSL Docker Compose
For permanent deletion, prefer the managed action in Ranch Hand. The commands below remain available for retain-data removal or manual recovery.
Run this inside the exact WSL distribution recorded in the plan. The default directory is $HOME/.<projectName>-ranch-hand.
cd "$HOME/.<projectName>-ranch-hand"
cat .ranch-hand-installation.json
POSTGRES_PASSWORD=ranch-hand-postgres-profile-disabled docker compose \
--project-name <projectName> \
--env-file .env \
--file compose.yaml \
--file ranch-hand.override.yaml \
down --remove-orphansTo retain data, keep <projectName>-data and the installation directory. For permanent deletion, rerun down with --volumes, confirm the owned volume is gone, and remove only the dedicated installation directory. Never remove an unexpected file or symlink during that cleanup.
Remote Linux Docker Compose
SSH to the exact private server and account in the plan, then use its installDirectory and projectName:
cd <installDirectory>
cat .ranch-hand-installation.json
POSTGRES_PASSWORD=ranch-hand-postgres-profile-disabled docker compose \
--project-name <projectName> \
--env-file .env \
--file compose.yaml \
--file ranch-hand.override.yaml \
down --remove-orphansTo retain data, keep <projectName>-data and the directory. For permanent deletion, use down --volumes --remove-orphans, verify the container and volume carry the marker's deployment identity, and remove only the dedicated installation directory. Do not change the server's Docker installation, Linux packages, firewall, SSH configuration, or unrelated images.
Azure Container Apps
The evaluation adapter creates a dedicated resource group recorded in the plan.
- Confirm the group's Container App, environment, storage resources, and deployment identity match the plan.
- To retain data, copy Azure Files content outside the dedicated group and verify that copy.
- Delete the dedicated resource group and wait for deletion to complete.
- Review subscription activity and costs for separately retained resources.
Never delete a shared or pre-existing resource group. Investigate any target that does not match the dedicated-group boundary.
Cloudflare Worker and D1
The plan records dedicated Worker and D1 names.
- Confirm both names and inspect the D1 ownership marker.
- To retain data, export D1 through an approved Cloudflare API or Wrangler workflow and verify the export outside Cloudflare.
- Delete the Worker first so it cannot continue writing.
- For permanent deletion, delete the exact D1 database after confirming the export or explicitly accepting data loss.
- Remove only routes, schedules, custom domains, and bindings owned by that Worker. Leave unrelated account resources unchanged.
Revoking the scoped installation token is separate from deleting the Worker and D1 database. Ranch Hand never persisted that token.
Remove Ranch Hand itself
Ranch Hand is a portable executable, not a Windows service. Close it and delete the downloaded executable. Keep %LOCALAPPDATA%\WranglerLabs\Ranch Hand while it contains evidence or backups you need. Deleting that entire directory permanently removes the catalog, verified cache, journals, and local backup archives for every target managed by that Windows account.