Skip to content

Instantly share code, notes, and snippets.

@timsonner
Created July 25, 2026 08:41
Show Gist options
  • Select an option

  • Save timsonner/66a28dd10e3f209312d7f6c7ff54360a to your computer and use it in GitHub Desktop.

Select an option

Save timsonner/66a28dd10e3f209312d7f6c7ff54360a to your computer and use it in GitHub Desktop.
Cockpit install

Cockpit — VM & Podman support

Quick install reference for this host (Ubuntu).

Install

Core + Virtual Machines (libvirt)

sudo apt update
sudo apt install cockpit cockpit-machines
  • cockpit — web UI + host modules (system, storage, network, …)
  • cockpit-machinesVirtual Machines page (pulls in libvirt/QEMU)

Containers (Podman)

sudo apt install podman cockpit-podman
  • podman — container engine (Docker-compatible CLI/images; not the Docker daemon)
  • cockpit-podmanPodman containers page in Cockpit

Enable/start the web socket if needed:

sudo systemctl enable --now cockpit.socket

Local host socket / URL

Cockpit listens via systemd socket activation on port 9090:

Unit cockpit.socket
Listen 9090 (ListenStream=9090)
Local URL http://localhost:9090
LAN URL http://<host-ip>:9090
# status
systemctl status cockpit.socket

# open locally
xdg-open http://localhost:9090
systemctl --user enable --now podman.socket

Browser will warn about the self-signed cert — expected for local Cockpit.

Log in with your Linux user (needs permission for the features you use: e.g. libvirt group for VMs; rootless Podman runs as your user).

After install

  1. Open http://localhost:9090
  2. Virtual Machines → create/manage libvirt VMs
  3. Podman containers → images, containers, pods (Podman only — not Docker Engine)

Optional: reboot or re-login if the Containers tab does not show up right away.

Notes

  • Docker ≠ Podman in Cockpit: cockpit-podman does not manage Docker. Same OCI images work; separate runtime.
  • Existing Docker install (if any) keeps working via docker CLI; new Cockpit-managed containers should use Podman.
  • VMs on this box have used qemu:///session (user session) as well as system libvirt — check which connection Cockpit is using if a VM is “missing.”
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment