Instalowanie Dockera na Ubuntu (4 proste sposoby)
Opublikowany: 2022-12-05Docker to popularne narzędzie do tworzenia i wdrażania oprogramowania w pakietach zwanych kontenerami. Ubuntu jest jedną z najpopularniejszych dystrybucji Linuksa i jest systemem operacyjnym dobrze wspieranym przez Dockera.
Instalacja Dockera na Ubuntu tworzy idealną platformę dla twoich projektów programistycznych, używając lekkich maszyn wirtualnych, które współdzielą jądro systemu operacyjnego Ubuntu. Ten samouczek pomoże Ci zacząć, wyjaśniając 4 sposoby, aby to osiągnąć.
Więcej o Dockerze
Docker pomaga przenosić aplikacje, umożliwiając ich tworzenie i uruchamianie na dowolnym hoście Docker. Obrazu kontenera można używać bez modyfikacji w każdym miejscu, w którym Docker jest dostępny — od laptopa po chmurę. Upraszcza to pracę programisty, eliminując różnice między środowiskami wykonawczymi. Format kontenera jest również łatwy do dystrybucji na wielu komputerach fizycznych, umożliwiając łatwe skalowanie aplikacji w odpowiedzi na zmieniające się zapotrzebowanie.
Docker zawiera wszystko, czego potrzebujesz do tworzenia i uruchamiania obrazów kontenerów, niezależnie od tego, czy pochodzą one z Docker Hub i innych rejestrów publicznych, czy z własnych plików Docker.
Przygotowanie do instalacji Dockera na Ubuntu
Najnowszą wersję Dockera można zainstalować na Ubuntu w wersjach 18.04, 20.04, 21.10 i 22.04. Obsługiwane są architektury x64_64/AMD64, ARMhf, ARM64 i S390x.
Istnieje kilka sposobów instalacji Dockera, a wybór będzie zależał od potrzebnej funkcjonalności i preferowanego podejścia do zarządzania pakietami. W tym przewodniku poznasz wszystkie możliwe opcje.
Wybieranie smaku Dockera
Docker w Linuksie był tradycyjnie tylko terminalem. Funkcjonalna instalacja obejmuje Docker Engine, demona, który uruchamia twoje kontenery, oraz interfejs docker
poleceń (CLI) platformy Docker do interakcji z demonem.
Docker Desktop to alternatywny sposób korzystania z Dockera. Historycznie dostępne tylko w systemach Windows i Mac, zostało uruchomione dla systemu Linux w maju 2022 r. Docker Desktop w systemie Ubuntu wymaga procesora AMD64 i systemu Ubuntu 21.10 lub 22.04. Zapewnia interfejs graficzny do zarządzania kontenerami, zintegrowany klaster Kubernetes i obsługę rozszerzeń innych firm. Docker Desktop udostępnia również interfejsy CLI platformy docker
i Docker Compose.
Docker Desktop różni się od Docker Engine tym, że używa maszyny wirtualnej do uruchamiania kontenerów (dlatego Docker Desktop jest wymagany dla użytkowników systemów Windows i MacOS). Chociaż w systemie Ubuntu można używać obu wersji obok siebie, mogą wystąpić konflikty między wersjami interfejsu CLI docker
Docker. Najlepiej wybrać jedną i się jej trzymać. Wybierz Docker Engine, jeśli dobrze czujesz się w swoim terminalu i chcesz najlepszego wsparcia i wydajności. Maszyna wirtualna Docker Desktop czyni ją nieco cięższą, ale jest lepszym wyborem, jeśli chcesz mieć zintegrowany interfejs użytkownika lub planujesz używać Kubernetes.
Instalacja Docker Engine na Ubuntu
Docker Engine to standardowy sposób uruchamiania Dockera w systemie Ubuntu. Działa ze wszystkimi obsługiwanymi wersjami i środowiskami, od lokalnego komputera Ubuntu Desktop po hosta w chmurze Ubuntu Server. Zanim przejdziesz dalej, upewnij się, że korzystasz z wersji Ubuntu 18.04 lub nowszej.
Docker Engine ma 3 różne metody instalacji:
- Oficjalne repozytorium Ubuntu
apt
- Samodzielny pakiet Debiana (
.deb
) - Automatyczny skrypt instalacyjny
Opcja 1, repozytorium Ubuntu apt
, jest najczęściej używana. Dodaje Dockera do listy pakietów, dzięki czemu możesz łatwo instalować przyszłe aktualizacje, uruchamiając apt upgrade
. Opcja 2 nie obsługuje automatycznych aktualizacji, ale jest idealna do instalowania platformy Docker w systemach offline z przerwami powietrznymi. Skrypt automatycznej instalacji jest najprostszą metodą rozpoczęcia, ale jest skonfigurowany wyłącznie do użytku programistycznego. Docker odradza używanie go w środowiskach produkcyjnych.
Korzystaj z repozytorium apt
, gdy pracujesz z systemem produkcyjnym, chcesz łatwych aktualizacji lub potrzebujesz używać tego samego mechanizmu we wszystkich środowiskach.
Skorzystaj ze skryptu automatycznej instalacji, jeśli potrzebujesz szybkiej konfiguracji podczas eksperymentowania z Dockerem na własnej maszynie.
1. Instalacja Dockera przy użyciu repozytorium apt
Docker publikuje pakiety we własnym repozytorium apt
. Musisz dodać to repozytorium do listy źródeł apt
, w przeciwnym razie instalacja apt
nie będzie w stanie znaleźć pakietów Docker.
Rozpocznij od zaktualizowania istniejącej listy pakietów i zainstalowania niektórych zależności dla poniższych kroków. Narzędzia ca-certificates
, curl
, gnupg
i lsb_release
zostaną użyte do pobrania poprawnych szczegółów repozytorium Docker apt
i klucza podpisu dla twojego systemu. Chociaż prawdopodobnie już masz te pakiety, nie zaszkodzi upewnić się, że są dostępne.
$ sudo apt update $ sudo apt install ca-certificates curl gnupg lsb-release
Następnie zarejestruj pęk kluczy GPG Dockera za pomocą apt. Pozwoli to apt
sprawdzić poprawność instalowanych pakietów Docker.
$ sudo mkdir -p /etc/apt/keyrings $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg $ sudo chmod a+r /etc/apt/keyrings/docker.gpg
Polecenie curl
pobiera klucz GPG Dockera dla Ubuntu, konwertuje go z powrotem do standardowego kodowania OpenGPG i zapisuje w katalogu keyring apt. chmod
służy do ustawiania uprawnień do pliku kluczy, aby apt
mógł go niezawodnie wykryć.
Teraz możesz dodać źródło pakietu Docker do swojego systemu. Uruchom następujące polecenie:
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Wykorzystuje to zastępowanie powłoki, aby automatycznie wykryć architekturę twojego systemu, taką jak AMD64 lub ARM64, i pobrać odpowiednią listę pakietów. Zostanie zweryfikowany za pomocą dodanego wcześniej klucza GPG. Repozytorium jest dodawane jako nowa lista pakietów w katalogu apt /etc/apt/sources.list.d directory.
Ponownie zaktualizuj listy pakietów, aby apt
wiedział, że istnieją pakiety Dockera:
$ sudo apt update
Teraz możesz użyć polecenia apt install
, aby dodać komponenty Dockera do swojego systemu. Będziesz instalować najnowszą wersję Docker Community Edition (CE). Do zainstalowania są trzy pakiety:
-
docker-ce
: demon Docker Engine. -
docker-ce-cli
: Docker CLI, z którym będziesz wchodzić w interakcje. -
containerd.io
: środowisko uruchomieniowe kontenera znane jako containerd, które uruchamia i uruchamia Twoje kontenery.
$ sudo apt install docker-ce docker-ce-cli containerd.io
2. Instalacja Dockera przy użyciu pakietu Debiana
Oficjalny pakiet .deb
jest prosty w konfiguracji, ale będziesz musiał ręcznie pobrać i zainstalować każdą nową wersję. Pakiety są hostowane na prostym serwerze plików. Najpierw przejdź do strony informacji o wersji platformy Docker, aby znaleźć najnowszy dostępny numer wersji, na przykład 20.10.20. Następnie przejdź do strony GitHub kontenera, aby sprawdzić również jego numer wersji. Będzie wyglądać jak 1.6.8.
Teraz możesz uruchomić następującą sekwencję poleceń, aby pobrać odpowiedni zestaw pakietów dla swojej platformy. Zastąp <DOCKER_VERSION>
i <CONTAINERD_VERSION>
odpowiednio bieżącymi numerami wersji platformy Docker i kontenerów.
$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-ce_<DOCKER_VERSION>~3-0~ubuntu-focal_amd64.deb -o docker-ce.deb $ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-ce-cli_<DOCKER_VERSION>~3-0~ubuntu-focal_amd64.deb -o docker-ce-cli.deb $ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/containerd.io_<CONTAINERD_VERISON>-1_amd64.deb -o containerd.deb
Możesz także pobrać pliki i sprawdzić wszystkie dostępne wersje, odwiedzając listę katalogów swojej wersji Ubuntu w przeglądarce.
Po pobraniu pakietów Docker CE, CLI i kontenerów użyj następującego polecenia, aby je zainstalować:
$ sudo apt install ./docker-ce.deb ./docker-ce-cli.deb ./containerd.deb
Dostosuj nazwy plików, jeśli ręcznie pobrałeś pakiety bez użycia powyższego skryptu.
3. Instalacja Dockera przy użyciu skryptu instalacyjnego
Wygodny skrypt Dockera automatyzuje instalację wszystkich komponentów Dockera. Jest nieinteraktywny, więc możesz usiąść i poczekać, aż system będzie dla Ciebie przygotowany.
Najpierw pobierz skrypt:
$ curl -fsSL https://get.docker.com -o get-docker.sh
Teraz uruchom skrypt z uprawnieniami roota:
$ sudo sh get-docker.sh Executing docker install script ...
Poczekaj, aż skrypt zakończy się. Powinien zostać wyświetlony komunikat potwierdzający, że Docker jest zainstalowany.
Skrypt ma być uniwersalnym rozwiązaniem. Nie możesz dostosować tego, co robi, bez bezpośredniej modyfikacji źródła skryptu. Nie jest również przeznaczony do przeprowadzania aktualizacji Dockera, ponieważ nie aktualizuje zależności do ich najnowszych wersji.
Upewnienie się, że Docker Engine działa na Ubuntu
Bez względu na to, jakiej metody instalacji użyłeś, powinieneś upewnić się, że wszystko działa, uruchamiając kontener:
$ sudo docker run hello-world
Zobaczysz, jak klient Docker ściąga hello-world:image
na twoją maszynę z repozytorium Docker Hub:
Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 2db29710123e: Pull complete Digest: sha256:7d246653d0511db2a6b2e0436cfd0e52ac8c066000264b3ce63331ac66dca625 Status: Downloaded newer image for hello-world:latest
Nowy kontener uruchomi się automatycznie. Obraz startowy „hello-world” jest skonfigurowany do uruchamiania prostego polecenia, które wyświetla podstawowe informacje o Dockerze, a następnie natychmiast kończy działanie:
Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal.
Wyświetlenie danych wyjściowych pokazanych powyżej oznacza, że Docker jest gotowy do użycia. Demon pomyślnie pobrał obraz hello-world:latest z Docker Hub i uruchomił przy jego użyciu kontener. Wszystko, począwszy od linii „Hello from Docker”, zostało wyemitowane przez proces wewnątrz kontenera.
Ustawianie uprawnień Docker Engine w systemie Ubuntu
Świeża instalacja Docker Engine zwykle wymaga uprawnień administratora do uruchamiania poleceń interfejsu CLI docker
Docker. Musisz poprzedzić każde polecenie sudo
, co jest niewygodne.
Możesz uniknąć tego wymogu, dodając się do grupy docker
po zainstalowaniu Docker Engine, wykonując powyższe czynności. Ta opcjonalna zmiana daje uprawnienia do uruchamiania poleceń platformy docker
jako zwykły użytkownik bez sudo
, co upraszcza korzystanie z interfejsu CLI.
Upewnij się, że istnieje grupa użytkowników docker
:
$ sudo groupadd docker
Następnie dodaj do tego siebie:
$ sudo usermod -aG docker $USER
Jeśli wcześniej uruchamiałeś dowolne polecenie docker
za pomocą sudo
, musisz naprawić uprawnienia w swoim katalogu ~/.docker
:
$ sudo chown $USER:$USER /home/$USER/.docker -R $ sudo chmod g+rwx $HOME/.docker -R
Dzięki temu Twoje własne konto użytkownika może odczytywać i zapisywać pliki w katalogu.
Wyloguj się z systemu i zaloguj ponownie, aby nowe członkostwo w grupie zaczęło obowiązywać. Spróbuj uruchomić polecenie docker
bez sudo
:
$ docker run hello-world
Ten krok po instalacji kończy proces instalacji platformy Docker w systemie Ubuntu. Demon jest już skonfigurowany do automatycznego uruchamiania, więc nie musisz ręcznie konfigurować usługi. Jeśli planujesz zaawansowaną instalację, zapoznaj się z instrukcją obsługi platformy Docker, aby uzyskać instrukcje dotyczące konfigurowania dostosowanej sieci, rejestrowania i zarządzania pamięcią masową.
Dodawanie Docker Compose do instalacji Ubuntu
Docker Compose to popularne narzędzie towarzyszące Docker, które ułatwia pracę z aplikacjami korzystającymi z wielu kontenerów. Podczas gdy docker
CLI dotyczy tylko jednego kontenera z każdym poleceniem, docker compose
może uruchamiać i zatrzymywać kilka kontenerów przy każdej akcji. Upraszcza to zarządzanie systemami, w których masz oddzielne usługi frontendu, backendu i bazy danych.
Docker Compose jest teraz dostępny jako część docker
CLI. Wtyczka Compose V2 jest dołączona, gdy używasz oficjalnego skryptu instalacyjnego do zainstalowania Dockera. Jest również dostępny w apt
, jeśli użyłeś tej metody:
$ sudo apt install docker-compose-plugin
Alternatywnie możesz pobrać najnowsze archiwum .deb
i zainstalować je ręcznie:
$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-compose-plugin_2.6.0~ubuntu-focal_amd64.deb -o docker-compose-plugin.deb $ sudo apt install -i ./docker-compose-plugin.deb
Sprawdź, czy Compose działa, wypróbowując polecenie docker compose version
:
$ docker compose version Docker Compose version v2.6.0
Instalowanie Docker Desktop na Ubuntu
Podczas gdy Docker Engine jest ograniczony tylko do interfejsu CLI, Docker Desktop zapewnia graficzny interfejs zarządzania, wbudowaną obsługę Kubernetes i opcjonalne rozszerzenia innych firm, które mogą pomóc uprościć przepływy pracy w kontenerach. To doskonały wybór, gdy szukasz łatwości obsługi na własnej stacji roboczej.
Aby zainstalować Docker Desktop, najpierw zainstaluj niektóre zależności, używając apt
:
$ sudo apt update $ sudo apt install ca-certificates curl gnupg lsb-release
Następnie uruchom następujący zestaw poleceń, aby dodać repozytorium apt
platformy Docker. Chociaż Docker Desktop nie jest zawarty w repozytorium, zawarte w nim pakiety są określane jako zależności przez archiwum Debiana Desktop.
$ sudo mkdir -p /etc/apt/keyrings $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg $ sudo chmod a+r /etc/apt/keyrings/docker.gpg $ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null $ sudo apt update
Polecenie curl
pobiera klucz GPG Dockera dla Ubuntu, konwertuje go z powrotem do standardowego kodowania OpenGPG i zapisuje w katalogu apt
keyring. chmod
służy do ustawiania uprawnień do pliku kluczy, aby apt
mógł go niezawodnie wykryć.
Pobierz archiwum Docker Desktop Debian z łącza w dokumentacji. Zapewni to najnowszą stabilną wersję Docker Desktop dla systemu Linux. Użyj apt
, aby zainstalować pakiet, zastępując pobrany numer wersji:
$ sudo apt install ./docker-desktop-4.11.0-amd64.deb
Docker Desktop pojawi się teraz w programie uruchamiającym aplikacje. Użyj programu uruchamiającego, aby uruchomić Docker Desktop i otworzyć interfejs użytkownika. Będziesz mógł także uruchamiać polecenia docker
, docker docker compose
i kubectl
w swoim terminalu. Aplikacja dodaje również menu do zasobnika powłoki, które pokazuje aktualny stan Docker Desktop i pozwala wykonać kilka szybkich czynności.
Zostaniesz poproszony o zaakceptowanie umowy serwisowej przy pierwszym uruchomieniu Docker Desktop. Naciśnij przycisk Akceptuj, jeśli wyrażasz zgodę, i poczekaj, aż Docker Desktop uruchomi swoją maszynę wirtualną.
Po kilku chwilach pulpit nawigacyjny zostanie załadowany. Zapewnia skróty do tworzenia nowych kontenerów z popularnych obrazów, unikając długich poleceń terminala.
DevKinsta: Docker Desktop dla WordPress
Specjalistyczne rozwiązania zbudowane na fundamencie Dockera zapewniają jeszcze łatwiejsze korzystanie z określonych technologii. DevKinsta to bezpłatne lokalne narzędzie programistyczne do tworzenia motywów i wtyczek WordPress, które wykorzystuje Docker do pełnej izolacji i zabezpieczenia witryn WordPress. Sprawia, że rozpoczęcie i dostosowanie nowego projektu WordPress jest szybkie i proste bez samodzielnego konfigurowania serwerów. Gdy będziesz gotowy, możesz przejść bezpośrednio do platformy Kinsta, aby wdrożyć swoją działającą witrynę.
Możesz zainstalować DevKinsta na MacOS, Windows i Ubuntu.
tweetowaćStreszczenie
Docker to sposób, w jaki większość programistów zaczyna używać kontenerów. Możesz łatwo zainstalować Dockera w swoim systemie Ubuntu, jako Docker Engine lub nowy Docker Desktop. Po zainstalowaniu Dockera będziesz w pełni przygotowany do tworzenia i uruchamiania kontenerów, co pozwoli uprościć programowanie i zmniejszyć rozbieżności między środowiskami.
Jeśli tworzysz motywy i wtyczki WordPress, DevKinsta może uprościć tworzenie lokalnego środowiska programistycznego i wdrażanie witryny.