failed to create container: cgroup driver mismatch: expected systemd but got cgroupfs. – Docker CGROUP_DRIVER_MISMATCH

CGROUP_DRIVER_MISMATCH

In cluster Kubernetes con Docker/containerd, kubelet richiede l'uso esclusivo del driver `systemd` per i cgroup; se Docker è configurato con `cgroupfs` i pod falliscono l'avvio.

Cosa significa questo errore?

In cluster Kubernetes con Docker/containerd, kubelet richiede l'uso esclusivo del driver `systemd` per i cgroup; se Docker è configurato con `cgroupfs` i pod falliscono l'avvio.

Messaggio originale

failed to create container: cgroup driver mismatch: expected systemd but got cgroupfs.

Contesto e parole chiave

Alias

  • cgroup driver mismatch
  • systemd cgroupfs conflict

Messaggi alternativi

  • discrepanza driver cgroup tra dockerd e kubelet systemd vs cgroupfs

Prodotti

  • Docker Engine / Docker Compose / BuildKit / containerd

Piattaforme

  • Docker Desktop su macOS
  • Docker Desktop su Windows
  • Linux

Parole chiave

  • CGROUP_DRIVER_MISMATCH
  • compose
  • container
  • docker
  • Docker Engine
  • docker.engine.systemd-cgroup-driver-mismatch
  • errore-docker-cgroup-driver-mismatch-systemd

Cause possibili

Origine del problema per Docker Engine: discrepanza cgroup driver (systemd vs cgroupfs)

In cluster Kubernetes con Docker/containerd, kubelet richiede l'uso esclusivo del driver `systemd` per i cgroup; se Docker è configurato con `cgroupfs` i pod falliscono l'avvio.

molto comune

Diagnosi

Diagnostica container e log per Docker Engine: discrepanza cgroup driver (systemd vs cgroupfs)

Eseguire comandi di ispezione dei container e controllare i log del demone Docker con journalctl o docker logs.

Come leggere il risultato. Mostra le eccezioni a runtime dell'applicazione, segnali di terminazione o errori di rete interna.

docker
docker logs --tail 50 <container_id>

Risoluzione

Procedura di risoluzione per Docker Engine: discrepanza cgroup driver (systemd vs cgroupfs)

Difficoltà: mediaRischio: basso

Applicare la configurazione raccomandata nelle specifiche ufficiali Docker e BuildKit.

  1. Ispezionare i parametri di avvio nel file Dockerfile o docker-compose.yml
  2. Verificare i vincoli di memoria, permessi e compatibilità delle porte
  3. Riavviare il container o eseguire una compilazione pulita senza cache

Domande frequenti

Come risolvere il problema CGROUP_DRIVER_MISMATCH in Docker?

In cluster Kubernetes con Docker/containerd, kubelet richiede l'uso esclusivo del driver `systemd` per i cgroup; se Docker è configurato con `cgroupfs` i pod falliscono l'avvio.

Approfondimenti

Schede correlate