Docker CE stöds officiellt inte av Red Hat Enterprise Linux (RHEL) 8 eller CentOS 8. Det av Red Hat officiellt rekommenderade sättet att hantera containrar på RHEL 8 och CentOS 8 är Podman. Podman är i princip en ersättning för Docker på RHEL 8 och CentOS 8. Docker-avbildningar är dock kompatibla med Podman. Så att flytta till Podman borde inte vara alltför svårt.
Den här artikeln handlar dock inte om Podman. Den handlar om att få Docker installerat på CentOS 8. Om du verkligen inte vill byta till Podman och fortsätta använda Docker på din RHEL 8- eller CentOS 8-maskin är den här artikeln för dig.
OBS: Om du ska använda Docker på en produktionsmaskin rekommenderar jag att du inte uppgraderar till CentOS 8/RHEL 8. Fortsätt att använda CentOS 7/RHEL 7 tills Docker har officiellt stöd för RHEL 8 och CentOS 8.
Installation av nödvändiga verktyg:
Först uppdaterar du cacheminnet i CentOS 8-paketförrådet med följande kommando:
Installera nu alla verktyg som krävs för installation av Docker CE med följande kommando:
fuse-overlayfs wget
För att bekräfta installationen trycker du på Y och sedan på <Enter>.
Alla nödvändiga verktyg bör vara installerade.
Att lägga till Docker CE Official Package Repository:
Docker CE finns inte i det officiella paketförrådet för CentOS 8. Men du kan lägga till det officiella Docker CE-paketförrådet i CentOS 8 och installera Docker därifrån.
För att lägga till det officiella Docker CE-paketförrådet kör du följande kommando:
docker-ce.repo
Nu uppdaterar du CentOS 8-paketförvarets cache med följande kommando:
Installation av Containerd.io:
Den största inkompatibiliteten för Docker CE på RHEL 8 och CentOS 8 är containerd.io-paketet. Docker CE är beroende av det paketet, men RHEL 8 och CentOS 8 flaggade officiellt dessa paket. Så du kan inte installera den version av containerd.io-paketet som Docker behöver för att fungera på RHEL 8 och CentOS 8 direkt med hjälp av pakethanterarna DNF eller YUM.
Turligtvis kan vi manuellt hämta den senaste versionen av containerd.io-paketet och installera det på CentOS 8.
Först navigerar vi till katalogen /tmp på följande sätt:
Den senaste versionen av containerd.io-paketet är 1.2.6-3.3 när detta skrivs. Du kan kontrollera om det finns en senare version när du läser den här artikeln på https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
Hämta nu den senaste versionen av containerd.io-paketet från det officiella CentOS 7-paketförrådet för Docker CE med följande kommando:
containerd.io-1.2.6-3.3.el7.x86_64.rpm
Den senaste versionen av containerd.io-paketet bör hämtas.
Den senaste versionen av containerd.io RPM-paketfilen bör finnas i katalogen /tmp som du kan se i skärmdumpen nedan.
Installera nu paketfilen containerd.io-1.2.6-3.3.el7.x86_64.rpm med hjälp av DNF-pakethanteraren på följande sätt:
För att bekräfta installationen trycker du på Y och sedan på <Enter>.
Den senaste versionen av containerd.io bör vara installerad.
Nu är du redo att installera Docker CE på din CentOS 8-maskin.
Installation av Docker CE:
För att installera Docker CE på CentOS 8 från det officiella Docker CE-paketförrådet kör du följande kommando:
För att bekräfta installationen trycker du på Y och sedan på <Enter>.
Pakethanteraren DNF bör börja hämta alla nödvändiga RPM-paket från Docker CE-paketförrådet. Det kan ta ett tag att slutföra.
När det här är klart bör Docker CE vara installerat.
Kontrollera nu docker-tjänstens status med följande kommando:
Dockertjänsten kan vara inaktiv (körs inte) och inaktiverad (startar inte automatiskt vid uppstart) som i mitt fall.
För att starta docker-tjänsten kör du följande kommando:
För att automatiskt starta docker-tjänsten vid uppstart av systemet lägger du också till docker-tjänsten till systemstarten i CentOS 8 enligt följande:
Nu kan du kontrollera statusen för docker-tjänsten igen.
Dockertjänsten bör vara aktiv (körs) och aktiverad (startar automatiskt vid uppstart av systemet).
Du vill inte köra Docker-kommandon med sudo eller som rootanvändare. För att kunna köra Docker-kommandon som din inloggningsanvändare måste du lägga till din inloggningsanvändare i gruppen docker.
För att lägga till din inloggningsanvändare i docker-gruppen kör du följande kommando:
Nu startar du om din CentOS 8-maskin med följande kommando:
När din CentOS 8-maskin har startat upp kan du kontrollera om Docker fungerar med följande kommando:
Som du kan se kör jag Docker CE 19.03.5. Docker Engine klient och server fungerar också.
Nu ska vi försöka köra hello-world Docker-containern.
Som du kan se hämtade Docker hello-world-containern från internet och körde den framgångsrikt.
Så, det är så du installerar Docker CE på CentOS 8. Tack för att du läste den här artikeln.