uninstall.sh
One script, two jobs: pull the agent off a host, or remove Deplo itself. Dry run by default.
--agent-only leaves the control plane in /opt/deplo alone. This is
the flag already in the command the dashboard prints for a server.
# See what would happen (dry run, the default)
curl -fsSL https://<deplo>/uninstall.sh | sudo bash -s -- --agent-only
# Do it
curl -fsSL https://<deplo>/uninstall.sh | sudo bash -s -- --yes --agent-only
# Do it, and delete the data too
curl -fsSL https://<deplo>/uninstall.sh | sudo bash -s -- --yes --agent-only --purge-dataProp
Type
One script, two jobs. By default it removes the control plane in
/opt/deplo (the panel, its Postgres, its Traefik), the agent, Deplo's
named containers, every container labelled as Deplo-managed, the deplo
network and /var/lib/deplo-agent. --agent-only stops at the agent. It
never touches Docker Engine, never rewrites /etc/docker/daemon.json (the
installer's backup stays as daemon.json.deplo-bak), and never touches a
container it did not label. Safe on a machine that was never a Deplo host,
and safe to run twice.
--purge-data deletes /opt/deplo/.env, and that holds
DEPLO_SECRET. Every backup artifact this instance wrote is encrypted
with a key derived from it. Copy the file first if you may ever want to
restore one.
The older /uninstall-agent.sh URL still works and always will: it serves
this same script with --agent-only already applied, so a command copied
into a runbook before uninstall.sh existed still means what it meant
then.
See also
Did this page help you?