Installazione di Docker CE

Per impostazione predefinita, Fedora CoreOS offre supporto immediato per il CLI di docker (fornito tramite Moby). Tuttavia, in alcuni casi, la Docker Community Edition (CE) potrebbe essere preferita per vari motivi. Questa pagina spiega come sostituire la versione fornita con l’ultima versione dai sorgenti Docker upstream.

L’approccio raccomandato dalla [documentazione ufficiale di Docker](https://docs.docker.com/engine/install/fedora/) è aggiungere il repository Docker al tuo sistema. In questo modo, puoi installare e aggiornare Docker CE da questo repository.

Installazione di Docker CE al primo avvio

Durante il provisioning, puoi installare Docker CE al primo avvio del sistema tramite la configurazione Ignition.

Configurazione Butane di esempio per configurare Docker CE
variant: fcos
version: 1.7.0
systemd:
  units:
    # Install Docker CE
    - name: rpm-ostree-install-docker-ce.service
      enabled: true
      contents: |
        [Unit]
        Description=Install Docker CE
        Wants=network-online.target
        After=network-online.target
        Before=zincati.service
        ConditionPathExists=!/var/lib/%N.stamp

        [Service]
        Type=oneshot
        RemainAfterExit=yes
        ExecStart=/usr/bin/curl --output-dir "/etc/yum.repos.d" --remote-name https://download.docker.com/linux/fedora/docker-ce.repo
        ExecStart=/usr/bin/rpm-ostree override remove moby-engine containerd runc docker-cli --install docker-ce
        ExecStart=/usr/bin/touch /var/lib/%N.stamp
        ExecStart=/usr/bin/systemctl --no-block reboot

        [Install]
        WantedBy=multi-user.target

Installazione di Docker CE su un sistema in esecuzione

Per prima cosa, scarica e configura il repository di Docker. Quindi è necessario rimuovere moby-engine e alcuni altri pacchetti conflittuali forniti per impostazione predefinita nell’immagine Fedora CoreOS, installare i pacchetti necessari di Docker CE e riavviare il sistema.

curl --remote-name https://download.docker.com/linux/fedora/docker-ce.repo
sudo install --owner 0 --group 0 --mode 644 docker-ce.repo /etc/yum.repos.d/docker-ce.repo
sudo rpm-ostree override remove moby-engine containerd runc docker-cli --install docker-ce --reboot

Aggiornamento di Docker CE

Docker CE dovrebbe essere aggiornato automaticamente con ogni nuova versione di Fedora CoreOS.

Se hai Docker CE installato e stai ancora utilizzando Fedora CoreOS 40, l’aggiornamento a Fedora CoreOS 41 probabilmente fallirà. Ciò è dovuto al nuovo pacchetto docker-cli aggiunto in Fedora CoreOS 41 e versioni successive. Per aggiornare a Fedora CoreOS 41, dovrai reimpostare le sovrascritture e disinstallare i pacchetti Docker CE stratificati con il seguente comando.

sudo rpm-ostree override reset containerd moby-engine runc --uninstall docker-ce

Dopo l’aggiornamento a Fedora CoreOS 41, puoi seguire le istruzioni per Installare Docker CE su un sistema in esecuzione.