Docker CE oficjalnie nie jest obsługiwany na Red Hat Enterprise Linux (RHEL) 8 lub CentOS 8. Oficjalnie zalecanym przez Red Hat sposobem zarządzania kontenerami na RHEL 8 i CentOS 8 jest Podman. Podman jest w zasadzie zamiennikiem dla Dockera na RHEL 8 i CentOS 8. Obrazy Dockera są jednak kompatybilne z Podmanem. Tak więc, przejście na Podman nie powinno być zbyt trudne.

Anyway, ten artykuł nie jest o Podman. Chodzi o zainstalowanie Dockera na CentOS 8. Jeśli naprawdę nie chcesz przejść na Podmana i nadal używać Dockera na maszynie RHEL 8 lub CentOS 8, to ten artykuł jest dla Ciebie.

UWAGA: Jeśli zamierzasz używać Dockera na maszynie produkcyjnej, to polecam nie uaktualniać do CentOS 8/RHEL 8. Używaj CentOS 7/RHEL 7, dopóki Docker nie będzie miał oficjalnego wsparcia dla RHEL 8 i CentOS 8.

Instalacja wymaganych narzędzi:

Po pierwsze, zaktualizuj pamięć podręczną repozytorium pakietów CentOS 8 za pomocą następującego polecenia:

$ sudo dnf makecache

Teraz zainstaluj wszystkie narzędzia wymagane do instalacji Docker CE za pomocą następującego polecenia:

$ sudo dnf install dnf-utils device-mapper-persistent-data lvm2
fuse-overlayfs wget

Aby potwierdzić instalację, naciśnij Y, a następnie naciśnij <Enter>.

Wszystkie wymagane narzędzia powinny być zainstalowane.

Dodanie oficjalnego repozytorium pakietów Docker CE:

Docker CE nie jest dostępny w oficjalnym repozytorium pakietów systemu CentOS 8. Można jednak dodać oficjalne repozytorium pakietów Docker CE w systemie CentOS 8 i zainstalować z niego Dockera.

Aby dodać oficjalne repozytorium pakietów Docker CE, wykonaj następujące polecenie:

$ sudo yum-config-manager –add-repo https://download.docker.com/linux/centos/
docker-ce.repo

Teraz zaktualizuj pamięć podręczną repozytorium pakietów CentOS 8 za pomocą następującego polecenia:

$ sudo dnf makecache

Instalacja Containerd.io:

Główną niekompatybilnością Dockera CE na RHEL 8 i CentOS 8 jest pakiet containerd.io. Docker CE zależy od tego pakietu, ale RHEL 8 i CentOS 8 oficjalnie oflagowały te pakiety. Tak więc, nie można zainstalować wersję pakietu containerd.io, że Docker potrzebuje do pracy na RHEL 8 i CentOS 8 przy użyciu DNF lub YUM menedżerów pakietów bezpośrednio.

Na szczęście, możemy ręcznie pobrać najnowszą wersję containerd.io i zainstalować ją w systemie CentOS 8.

Po pierwsze, przejdź do katalogu /tmp w następujący sposób:

$ cd /tmp

Najnowsza wersja pakietu containerd.io to 1.2.6-3.3 w momencie pisania tego tekstu. Możesz sprawdzić, czy nie ma nowszej wersji podczas czytania tego artykułu na stronie https://download.docker.com/linux/centos/7/x86_64/stable/Packages/

Teraz pobierz najnowszą wersję pakietu containerd.io z oficjalnego repozytorium pakietów CentOS 7 dla Docker CE za pomocą następującego polecenia:

$ wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
containerd.io-1.2.6-3.3.el7.x86_64.rpm

Najnowsza wersja pakietu containerd.io powinna zostać pobrana.

Plik pakietu RPM containerd.io powinien znajdować się w katalogu /tmp, jak widać na poniższym zrzucie ekranu.

$ ls -lh containerd.io*

Teraz zainstaluj plik pakietu containerd.io-1.2.6-3.3.el7.x86_64.rpm za pomocą menedżera pakietów DNF w następujący sposób:

$ sudo dnf localinstall ./containerd.io-1.2.6-3.3.el7.x86_64.rpm

Aby potwierdzić instalację, naciśnij Y, a następnie naciśnij <Enter>.

Najnowsza wersja containerd.io powinna być zainstalowana.

Teraz jesteś gotowy do zainstalowania Docker CE na maszynie CentOS 8.

Instalacja Docker CE:

Aby zainstalować Docker CE na CentOS 8 z oficjalnego repozytorium pakietów Docker CE, wykonaj następujące polecenie:

$ sudo dnf install docker-ce docker-ce-cli

Aby potwierdzić instalację, naciśnij Y, a następnie naciśnij <Enter>.

Menedżer pakietów DNF powinien rozpocząć pobieranie wszystkich wymaganych pakietów RPM z repozytorium pakietów Docker CE. Może to chwilę potrwać.

W tym momencie Docker CE powinien być zainstalowany.

Teraz sprawdź status usługi docker za pomocą następującego polecenia:

$ sudo systemctl status docker

Usługa docker może być nieaktywna (nie działa) i wyłączona (nie uruchamia się automatycznie przy starcie systemu), jak w moim przypadku.

Aby uruchomić usługę docker, wykonaj następujące polecenie:

$ sudo systemctl start docker

Aby automatycznie uruchomić usługę docker przy starcie systemu, dodaj usługę docker do startu systemowego CentOS 8 w następujący sposób:

$ sudo systemctl enable docker

Teraz ponownie sprawdź stan usługi docker.

$ sudo systemctl status docker

Usługa docker powinna być aktywna (działająca) i włączona (będzie się automatycznie uruchamiać przy starcie systemu).

Nie będziesz chciał uruchamiać poleceń Docker z sudo lub jako użytkownik root. Aby uruchamiać polecenia Dockera jako użytkownik logowania, musisz dodać swojego użytkownika logowania do grupy docker.

Aby dodać użytkownika logowania do grupy docker, wykonaj następujące polecenie:

$ sudo usermod -aG docker $(whoami)

Następnie zrestartuj maszynę CentOS 8 za pomocą następującego polecenia:

$ sudo reboot

Po uruchomieniu maszyny CentOS 8 możesz sprawdzić, czy Docker działa, wydając następujące polecenie:

$ docker version

Jak widać, uruchamiam Docker CE 19.03.5. Klient i serwer Docker Engine również działa.

Teraz spróbujmy uruchomić kontener hello-world Docker.

$ docker run hello-world

Jak widać, Docker ściągnął z internetu kontener hello-world i uruchomił go pomyślnie.

Więc tak wygląda instalacja Docker CE na CentOS 8. Dzięki za przeczytanie tego artykułu.

admin

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.

lg