Skip to content

Maintenance

Daemon lifecycle

dockup daemon start     # refuses if already running (foreground or daemon)
dockup daemon stop
dockup daemon restart
dockup daemon status    # running (daemon pid ..., pipe ok) / stopped — exit code matches
dockup daemon log       # follow the log, read-only, Ctrl+C to exit

Full shutdown and uninstall

dockup shutdown    # stop everything (daemon + any foreground) + terminate the distro
dockup uninstall   # confirm [y/n], unregister the distro, clear state

Uninstall keeps default_path for the next setup, removes the Startup entry, and is idempotent — running it twice still exits 0.

Health and repair

dockup doctor          # checks WSL, distro, systemd, socket, pipe, config; repairs stale PIDs/paths
dockup doctor --fix    # also reinstalls + reconfigures a broken in-distro engine
dockup upgrade         # confirm [y/n], update the engine to latest, restart services, verify

doctor --fix is engine-only repair. For tampering around the engine (extra packages, broken configs), use restore:

dockup restore         # confirm [y/n]: remove packages added since setup,
                       # reinstall engine set, rewrite managed configs,
                       # restart services. Images, containers, volumes survive.
dockup restore --full  # confirm [y/n]: delete + reinstall the whole distro.
                       # Guaranteed pristine; containers, images, volumes are destroyed.
                       # Accepts --amd/--arm/--path overrides.

Rule of thumb: doctor --fix when the engine won't answer, restore when the distro was fiddled with, restore --full when you want factory-fresh.