Docker w Linux: Konteneryzacja aplikacji krok po kroku
Linux

Docker w Linux: Konteneryzacja aplikacji krok po kroku

Docker w Linux: Konteneryzacja aplikacji krok po kroku


🚀 Docker to jedno z najważniejszych narzędzi dla programistów i administratorów systemów, które rewolucjonizuje sposób wdrażania i zarządzania aplikacjami. Wykorzystując konteneryzację, Docker pozwala na łatwe, szybkie i bezpieczne uruchamianie aplikacji w izolowanym środowisku. W tym artykule przeprowadzimy Cię przez cały proces — od instalacji Dockera na Linuxie, przez tworzenie i zarządzanie kontenerami, aż po praktyczne przykłady.


❓ Co to jest Docker i konteneryzacja?

Docker to platforma open source umożliwiająca uruchamianie aplikacji w izolowanych środowiskach zwanych kontenerami. Kontenery działają niezależnie od siebie, ale współdzielą jądro systemu operacyjnego, co czyni je lekkimi i szybkim w porównaniu do tradycyjnych maszyn wirtualnych.

🌟 Konteneryzacja to sposób pakowania aplikacji wraz ze wszystkimi zależnościami w jednym, przenośnym kontenerze, co umożliwia łatwe uruchamianie na różnych środowiskach — od laptopa programisty po serwery produkcyjne.


🔒 Zalety używania Dockera na Linux

  • Szybkość i lekkość: kontenery uruchamiają się szybciej niż maszyny wirtualne.
  • Przenośność: ten sam kontener działa na każdym systemie z Dockerem.
  • Izolacja: aplikacje działają w odseparowanym środowisku, co zwiększa bezpieczeństwo.
  • Skalowalność: łatwe tworzenie wielu instancji aplikacji i zarządzanie nimi.
  • Społeczność i ekosystem: tysiące gotowych obrazów dostępnych w Docker Hub.
Docker w Linux: Konteneryzacja aplikacji krok po kroku
Docker w Linux: Konteneryzacja aplikacji krok po kroku

🛠️ Instalacja Dockera na Linux krok po kroku

  1. Aktualizacja systemu
sudo apt update && sudo apt upgrade -y
  1. Instalacja niezbędnych pakietów
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
  1. Dodanie oficjalnego repozytorium Dockera
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  1. Instalacja Dockera
sudo apt update
sudo apt install docker-ce -y
  1. Sprawdzenie instalacji
sudo systemctl status docker
docker --version

📚 Podstawowe pojęcia Dockera

  • Obraz (image): szablon zawierający system, aplikację i zależności.
  • Kontener: działająca instancja obrazu.
  • Dockerfile: plik tekstowy definiujący kroki budowy obrazu.
Czytaj  Kontenery, WSL i izolacja aplikacji – zabezpieczanie środowisk deweloperskich

▶️ Tworzenie i uruchamianie pierwszego kontenera

Aby uruchomić prosty kontener z serwerem Nginx:

sudo docker run -d -p 8080:80 nginx
  • -d – uruchom w tle
  • -p 8080:80 – przekieruj port 8080 lokalnego komputera na port 80 kontenera

Teraz otwórz w przeglądarce: http://localhost:8080 i zobaczysz domyślną stronę Nginx.


⚙️ Zarządzanie kontenerami i obrazami

  • Lista działających kontenerów:
sudo docker ps
  • Lista wszystkich kontenerów (w tym zatrzymanych):
sudo docker ps -a
  • Zatrzymanie kontenera:
sudo docker stop <container_id>
  • Usunięcie kontenera:
sudo docker rm <container_id>
  • Lista obrazów:
sudo docker images
  • Usunięcie obrazu:
sudo docker rmi <image_id>

📝 Przykładowy Dockerfile – tworzenie własnego obrazu

FROM ubuntu:22.04
RUN apt update && apt install -y python3 python3-pip
COPY app.py /app.py
CMD ["python3", "/app.py"]

Budowa obrazu:

sudo docker build -t moja-aplikacja .

Uruchomienie kontenera:

sudo docker run moja-aplikacja

💡 Najlepsze praktyki i porady

  • Regularnie aktualizuj obrazy Dockera.
  • Unikaj uruchamiania kontenerów z uprawnieniami root.
  • Korzystaj z Docker Compose do zarządzania wieloma kontenerami.
  • Monitoruj zużycie zasobów i logi kontenerów.
  • Izoluj sieciowo kontenery w środowiskach produkcyjnych.

✅ Podsumowanie

Docker na Linux to potężne narzędzie, które zmienia sposób, w jaki tworzymy, wdrażamy i zarządzamy aplikacjami. Dzięki konteneryzacji możesz szybko uruchamiać i skalować usługi, eliminując problemy z kompatybilnością i konfiguracją środowiska.

🔗 Jeśli dopiero zaczynasz swoją przygodę z Dockerem, krok po kroku instaluj, eksperymentuj z kontenerami i twórz własne obrazy. Z czasem stanie się on kluczowym elementem Twojego workflow!

 

Polecane wpisy
Jak zarządzać usługami w Linuxie (systemd/sysvinit)? Kompletny poradnik administracyjny
Jak zarządzać usługami w Linuxie (systemd/sysvinit)? Kompletny poradnik administracyjny

Jak zarządzać usługami w Linuxie (systemd/sysvinit)? Kompletny poradnik administracyjny Zarządzanie usługami w systemie Linux to jedna z podstawowych kompetencji administratora Czytaj dalej

Marek "Netbe" Lampart Inżynier informatyki Marek Lampart to doświadczony inżynier informatyki z ponad 25-letnim stażem w zawodzie. Specjalizuje się w systemach Windows i Linux, bezpieczeństwie IT, cyberbezpieczeństwie, administracji serwerami oraz diagnostyce i optymalizacji systemów. Na netbe.pl publikuje praktyczne poradniki, analizy i instrukcje krok po kroku, pomagając administratorom, specjalistom IT oraz zaawansowanym użytkownikom rozwiązywać realne problemy techniczne.