Niektóre technologie działają w cieniu. Nie rzucają się w oczy, nie mają efektownych interfejsów, a mimo to napędzają tysiące aplikacji i usług, z których korzystamy każdego dnia. Docker jest jedną z nich. To właśnie dzięki niemu tworzenie, testowanie i wdrażanie oprogramowania stało się szybsze, prostsze i bardziej przewidywalne. Jeśli chcesz dowiedzieć się, jak zainstalować Dockera na Ubuntu, jesteś we właściwym miejscu. W tym poradniku przeprowadzimy Cię przez cały proces krok po kroku, wyjaśniając nie tylko, co zrobić, ale również dlaczego warto wykonać poszczególne czynności.
Docker i dlaczego warto go używać
Docker to platforma umożliwiająca pakowanie aplikacji razem z całym jej środowiskiem – bibliotekami, zależnościami i konfiguracją – w jedną, przenośną jednostkę zwaną kontenerem. Zamiast instalować dziesiątki programów bezpośrednio na systemie i modlić się, żeby nic się nie pogryzło, uruchamiasz aplikację w izolowanej przestrzeni, która działa identycznie na laptopie, serwerze produkcyjnym i komputerze kolegi z zespołu. Programiści cenią go za powtarzalność środowisk, administratorzy za łatwość wdrażania, a Ty pokochasz go za to, że przestaniesz słyszeć klasyczne „u mnie działało”.
Musisz jednak wiedzieć, że kontener różni się od maszyny wirtualnej tym, że nie uruchamia całego systemu operacyjnego od zera, dzieli jądro z hostem i startuje w sekundy, nie w minuty. Dzięki temu jedna maszyna fizyczna może obsłużyć znacznie więcej izolowanych aplikacji niż przy klasycznej wirtualizacji. Repozytorium Docker Hub liczy obecnie ponad 8,3 miliona repozytoriów obrazów, co daje pewność, że praktycznie każde popularne oprogramowanie masz gotowe do pobrania jednym poleceniem.
Wymagania przed instalacją Dockera na Ubuntu
Zanim zabierzesz się do pracy, sprawdź jaką masz wersję systemu – obecnie najlepiej wsparte są Ubuntu 26.04, Ubuntu 24.04 oraz starsze, wciąż popularne Ubuntu 22.04 LTS. Potrzebujesz dostępu do konta z uprawnieniami administratora (sudo) oraz działającego połączenia z internetem, bez tego ani rusz.
Dobrze jest również usunąć wcześniejsze, nieaktualne wersje pakietów związanych z konteneryzacją, jeśli kiedyś próbowałeś już swoich sił z Dockerem. Starsze pakiety noszą nazwy takie jak docker.io, docker-engine czy podman-docker i mogą powodować konflikty przy instalacji nowszej wersji.
sudo apt remove docker docker-engine docker.io containerd runc
Nie martw się, jeśli terminal poinformuje, że żaden z tych pakietów nie jest zainstalowany – to normalne u osób, które robią to po raz pierwszy. Jednakże dla pewności trzeba wykonać to polecenie.
Instalacja Dockera na Ubuntu przez oficjalne repozytorium
Najbezpieczniejszą i najbardziej zalecaną metodą jest zainstalowanie Dockera z oficjalnego repozytorium producenta, a nie z domyślnego repozytorium Ubuntu, które często ma starsze wersje pakietów. Zaczynasz od aktualizacji listy pakietów systemowych.
sudo apt update
Następnie doinstalowujesz pakiety pomocnicze, dzięki którym menedżer apt może korzystać z repozytoriów przez protokół HTTPS.
sudo apt install ca-certificates curl gnupg
Kolejny krok to pobranie i zapisanie klucza GPG repozytorium Docker – to zabezpieczenie gwarantuje, że instalowane pakiety faktycznie pochodzą od producenta, a nie od kogoś, kto podszywa się pod niego w sieci.
sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc
Teraz dodajesz samo repozytorium Docker do listy źródeł apt. Poniższe polecenie automatycznie rozpozna nazwę Twojej wersji Ubuntu, dzięki funkcji lsb_release -cs.
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Po dodaniu repozytorium odśwież listę pakietów jeszcze raz, żeby system zauważył nowe źródło.
sudo apt update
Zainstaluj Docker Engine i jego dodatki
Ten moment jest właściwym sercem całej operacji – instalujesz Docker Engine razem z narzędziami, których niemal na pewno będziesz potrzebować później, czyli klientem CLI, obsługą kontenerów przez containerd oraz wtyczkami buildx i compose.
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Po zakończeniu instalacji sprawdź, czy wszystko przebiegło zgodnie z planem. Poniższe polecenie pokaże zainstalowaną wersję Dockera.
docker --version
Jeśli terminal odpowie numerem wersji, gratulujemy sobie w duchu – instalacja się powiodła. Usługa Docker uruchamia się domyślnie automatycznie po instalacji i włącza się razem z systemem, ale zawsze możesz to zweryfikować poleceniem systemctl status docker.
Dodanie użytkownika do grupy Docker
Domyślnie polecenia Dockera wymagają uprawnień root, co skutkuje tym, że musisz wpisywać sudo przed każdą komendą – męczące jak proszenie sąsiada codziennie o cukier. Rozwiązaniem jest dodanie swojego konta do grupy docker, dzięki czemu zarządzasz kontenerami bez podnoszenia uprawnień.
sudo usermod -aG docker $USER
Zmiana zadziała po wylogowaniu i ponownym zalogowaniu się, albo natychmiast po wpisaniu poniższego polecenia w bieżącej sesji terminala.
newgrp docker
Pamiętaj jednak, że dodanie użytkownika do grupy docker w praktyce daje mu uprawnienia zbliżone do roota na systemie, więc na maszynach produkcyjnych dobrze jest ograniczyć ten dostęp do zaufanych osób.
Uruchomienie pierwszego kontenera testowego
Czas na sprawdzenie, czy cała instalacja Dockera na Ubuntu faktycznie działa w praktyce, a nie tylko w teorii. Poniższe polecenie pobierze mały obraz testowy z Docker Hub i uruchomi go jako kontener.
docker run hello-world
Jeśli na ekranie zobaczysz wiadomość zaczynającą się od „Hello from Docker!”, oznacza to, że demon Dockera pracuje poprawnie, pobiera obrazy z repozytorium i uruchamia kontenery bez najmniejszego zgrzytu. Możesz też od razu spróbować czegoś praktyczniejszego i pobrać obraz Ubuntu, żeby wejść do środowiska kontenerowego niczym do osobnego, mini-systemu operacyjnego.
docker run -it ubuntu bash
Wewnątrz takiego kontenera Ubuntu masz pełną powłokę bash, w której możesz instalować pakiety, testować skrypty i psuć rzeczy do woli – żadne zmiany nie wpłyną na system hosta.
Docker Compose przy aplikacjach wielokontenerowych
Jeśli Twój projekt składa się z wielu kontenerów, na przykład backendu, bazy danych i cache, ręczne odpalanie każdego z nich osobno szybko zamienia się w żonglerkę poleceniami. Docker Compose rozwiązuje ten problem, definiując wszystkie usługi w jednym pliku YAML i uruchamiając je jednym poleceniem.
docker compose up -d
Wtyczka compose instaluje się razem z pakietem docker-compose-plugin, który dodałeś już w poprzednim kroku instalacji, więc nie musisz szukać niczego dodatkowego. Dla porządku warto zaznaczyć, że nowoczesna składnia to docker compose (bez myślnika), a starsze przewodniki wciąż odwołują się do docker-compose – obie działają podobnie, ale ta pierwsza jest aktualnym standardem.
Docker Desktop jako alternatywa graficzna
Osoby przyzwyczajone do interfejsu graficznego mogą zainstalować Docker Desktop dla Linuxa, który daje panel do zarządzania kontenerami, obrazami i wolumenami bez wpisywania jednego polecenia. Rozwiązanie to sprawdza się przy pracy lokalnej na laptopie, jednak na serwerach produkcyjnych Docker Engine z linii komend pozostaje standardem branżowym, głównie ze względu na mniejsze zużycie zasobów.
Docker Desktop pobierasz z oficjalnej strony docker.com w formacie pakietu deb i instalujesz go przez menedżera pakietów graficznego lub polecenie dpkg. Dla początkujących bloga technologicznego, którzy dopiero raczkują w Linuxie, jest to opcja bardziej przyjazna niż surowy terminal – choć osobiście uważam, że nauka linii komend szybciej wynagradza się w codziennej pracy.
Instalacja Dockera na Ubuntu, gdy rozłożysz ją na czynniki pierwsze, nie jest ani skomplikowana, ani czasochłonna – to kilkanaście poleceń wpisanych z sensem i odrobiną cierpliwości. Skoro masz już działający Docker Engine, grupę użytkownika skonfigurowaną i przetestowany kontener hello-world, jedyne co Cię ogranicza to Twoja wyobraźnia co do tego, co zechcesz w tych kontenerach uruchomić.
FAQ – najczęstsze pytania o Dockera na Ubuntu
Zebraliśmy pytania, które najczęściej krążą po forach i grupach dla początkujących administratorów – odpowiedzi poniżej powinny rozwiać większość Twoich wątpliwości.
Czy Docker działa na każdej wersji Ubuntu?
Docker Engine wspiera aktualne wersje LTS, czyli Ubuntu 26.04, 24.04 oraz 22.04, a producent regularnie kończy wsparcie dla najstarszych wydań. Na nowszych systemach instalacja przebiega identycznie, różni się jedynie nazwa kodowa w repozytorium.
Czy muszę używać sudo przy każdym poleceniu Docker?
Nie musisz, jeśli dodasz swoje konto do grupy docker poleceniem usermod. Po wylogowaniu i zalogowaniu ponownym polecenia działają bez sudo.
Czym różni się Docker Engine od Docker Desktop?
Docker Engine to silnik działający z linii komend, typowy dla serwerów, a Docker Desktop dodaje graficzny interfejs i wygodę dla pracy lokalnej. Funkcjonalnie oba korzystają z tego samego mechanizmu kontenerów pod maską.
Czy instalacja z repozytorium Ubuntu jest gorsza niż z repozytorium Docker?
Domyślne repozytorium Ubuntu bywa zapełnione starszymi wersjami pakietu docker.io, które opóźniają się względem aktualnych wydań producenta. Oficjalne repozytorium Docker daje dostęp do najnowszej wersji od razu po jej wydaniu.
Czy Docker zajmuje dużo miejsca na dysku?
Sam silnik Docker zajmuje niewiele, ale obrazy i kontenery mogą narastać z czasem, zwłaszcza przy testowaniu wielu wersji aplikacji. Dobrze jest okresowo czyścić nieużywane elementy poleceniem docker system prune.
Czy mogę uruchomić kilka kontenerów jednocześnie?
Oczywiście, to jedna z głównych zalet Dockera – możesz odpalić dziesiątki kontenerów naraz, o ile pozwala na to pamięć i moc procesora Twojej maszyny. Docker Compose ułatwia zarządzanie taką grupą usług jednym plikiem konfiguracyjnym.
Czy Docker zastępuje maszyny wirtualne?
W wielu scenariuszach tak, ponieważ kontenery startują szybciej i zużywają mniej zasobów niż pełne maszyny wirtualne. Nie zastąpi ich jednak wszędzie, bo maszyny wirtualne dają silniejszą izolację na poziomie jądra systemu.
Co jeśli polecenie docker run hello-world nie działa?
Najczęstszą przyczyną jest brak uprawnień użytkownika do grupy docker albo nieuruchomiona usługa systemowa Dockera. Sprawdź status usługi poleceniem systemctl status docker i upewnij się, że wylogowałeś się po dodaniu do grupy.
Czy Docker jest bezpieczny do użycia na serwerze produkcyjnym?
Tak, pod warunkiem regularnych aktualizacji, ograniczenia dostępu do grupy docker oraz pilnowania źródła pobieranych obrazów. Wiele dużych firm opiera swoją infrastrukturę produkcyjną właśnie na kontenerach Docker.
Jak zaktualizować Dockera do nowszej wersji?
Wystarczy ponownie uruchomić sudo apt update, a potem sudo apt upgrade, a system automatycznie pobierze aktualizację z dodanego wcześniej repozytorium. Nie musisz przy tym usuwać żadnych kontenerów czy obrazów.
Czy Docker Compose trzeba instalować osobno?
Nie, jeśli podczas instalacji Dockera na Ubuntu dodałeś pakiet docker-compose-plugin, wtyczka jest już gotowa do użycia poleceniem docker compose. Osobna instalacja jest potrzebna tylko przy starszych, samodzielnych wersjach docker-compose.
Czy da się odinstalować Dockera bez ryzyka dla systemu?
Tak, polecenie sudo apt remove docker-ce docker-ce-cli containerd.io usuwa pakiety bez wpływu na resztę systemu Ubuntu. Pamiętaj jednak, że obrazy i wolumeny zostają na dysku, jeśli nie usunięcie ich osobno.








